Java tutorial
/* This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ package org.mozilla.mozstumbler.client.subactivities; import android.app.Dialog; import android.graphics.drawable.ColorDrawable; import android.os.Bundle; import android.support.v4.app.DialogFragment; import android.support.v4.app.FragmentActivity; import android.support.v4.app.FragmentManager; import android.text.method.LinkMovementMethod; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.Button; import android.widget.TextView; import org.mozilla.mozstumbler.R; import org.mozilla.mozstumbler.client.ClientPrefs; import org.mozilla.mozstumbler.client.MainApp; import org.mozilla.mozstumbler.svclocator.ServiceLocator; import org.mozilla.mozstumbler.svclocator.services.log.ILogger; import org.mozilla.mozstumbler.svclocator.services.log.LoggerUtil; public class FirstRunFragment extends DialogFragment { private static ILogger Log = (ILogger) ServiceLocator.getInstance().getService(ILogger.class); private static final String LOG_TAG = LoggerUtil.makeLogTag(FirstRunFragment.class); private static FirstRunFragment mInstance; View root; public static void showInstance(FragmentManager fm) { if (mInstance == null) { mInstance = new FirstRunFragment(); mInstance.show(fm, null); } } @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { getDialog().setTitle(getActivity().getString(R.string.first_run_welcome_to_mozstumbler)); getDialog().getWindow().setBackgroundDrawable(new ColorDrawable(0xaa000000)); getDialog().setCanceledOnTouchOutside(false); root = inflater.inflate(R.layout.fragment_first_run, container, false); TextView tv = (TextView) root.findViewById(R.id.textview2); tv.setMovementMethod(LinkMovementMethod.getInstance()); Button button = (Button) root.findViewById(R.id.button); button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { FragmentActivity thisActivity = getActivity(); if (thisActivity == null) { return; } MainApp theApp = (MainApp) thisActivity.getApplication(); if (theApp == null) { return; } theApp.startScanning(); ClientPrefs.getInstance(getActivity()).setFirstRun(false); Dialog d = getDialog(); if (d != null) { dismiss(); } } }); return root; } }