Example usage for android.support.v4.app Fragment getClass

List of usage examples for android.support.v4.app Fragment getClass

Introduction

In this page you can find the example usage for android.support.v4.app Fragment getClass.

Prototype

@HotSpotIntrinsicCandidate
public final native Class<?> getClass();

Source Link

Document

Returns the runtime class of this Object .

Usage

From source file:de.unipassau.isl.evs.ssh.app.activity.AppMainActivity.java

/**
 * Displays a fragment and takes care of lifecycle actions like saving state when rotating the
 * screen or managing the back button behavior.
 *
 * @param clazz  the class of the fragment to show
 * @param bundle the bundle that is given with the new fragment
 *//*from ww  w.jav  a  2  s .  c om*/
public void showFragmentByClass(Class clazz, Bundle bundle) {
    Class classToShow = clazz;
    final boolean isRegistered = isRegistered();
    final Permission permission = permissionForFragment.get(classToShow);

    if (permission != null && !hasPermission(permission) && isRegistered) {
        Toast.makeText(this,
                String.format(getString(R.string.fragment_access_denied), permission.toLocalizedString(this)),
                Toast.LENGTH_SHORT).show();
        return;
    }

    final Fragment currentFragment = getCurrentFragment();
    if (currentFragment != null && Objects.equals(classToShow, currentFragment.getClass())) {
        return;
    }

    // avoid leaving the welcome fragment before registration
    if (!isRegistered) {
        classToShow = WelcomeScreenFragment.class;
    }

    final Fragment fragment;
    try {
        fragment = (Fragment) classToShow.newInstance();
        if (bundle != null) {
            fragment.setArguments(bundle);
        }
    } catch (InstantiationException | IllegalAccessException e) {
        Log.wtf(TAG, "Could not instantiate fragment", e);
        return;
    }

    // Hide Keyboard before every fragment transaction
    View view = getCurrentFocus();
    if (view != null) {
        InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
        imm.hideSoftInputFromWindow(view.getWindowToken(), 0);
    }
    FragmentTransaction transaction = getSupportFragmentManager().beginTransaction();
    transaction.replace(R.id.fragment_container, fragment);

    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
        if (currentFragment instanceof MainFragment && fragment instanceof HolidayFragment) {
            View fragmentView = currentFragment.getView();
            if (fragmentView != null) {
                transaction.addSharedElement(fragmentView.findViewById(R.id.holidayButton),
                        "holidayIconTransition");
            }
            final TransitionInflater inflater = TransitionInflater.from(this);
            currentFragment.setSharedElementReturnTransition(
                    inflater.inflateTransition(R.transition.change_image_trans));
            currentFragment.setExitTransition(inflater.inflateTransition(android.R.transition.explode));

            fragment.setSharedElementEnterTransition(
                    inflater.inflateTransition(R.transition.change_image_trans));
            fragment.setEnterTransition(inflater.inflateTransition(android.R.transition.explode));
        } else if (fragment instanceof MainFragment && currentFragment != null) {
            transaction.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_CLOSE);
        } else {
            transaction.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN);
        }
    }

    transaction.commit();
}

From source file:com.lihu.myscreenengine.Services.Impl.ScreenService.java

public boolean show(String id) {
    final Fragment screen = (Fragment) ((Main) Engine.getInstance().getMainActivity())
            .getSupportFragmentManager().getFragment(null, id);
    if (screen == null) {
        Log.e(TAG, String.format("Failed to retrieve the Screen with id=%s", id));
        return false;
    } else {//w w w .j  ava  2s .com
        return this.show(screen.getClass(), id);
    }
}

From source file:com.auth0.lock.passwordless.LockPasswordlessActivity.java

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.com_auth0_passwordless_activity_lock_passwordless);

    passwordlessType = MODE_UNKNOWN;
    lock = getLock();/*from  w  w  w.  j  a v a 2 s  .c o m*/
    client = lock.getAuthenticationAPIClient();
    bus = lock.getBus();

    if (savedInstanceState == null) {
        isInProgress = false;
        Intent intent = getIntent();
        boolean invalidMagicLink = false;
        int mode = intent.getIntExtra(PASSWORDLESS_TYPE_PARAMETER, MODE_UNKNOWN);
        if (mode != MODE_UNKNOWN) {
            setPasswordlessType(mode);
        } else {
            AppLinkIntentParser linkParser = new AppLinkIntentParser(intent);
            invalidMagicLink = linkParser.isAppLinkIntent();
            if (invalidMagicLink) {
                setPasswordlessType(linkParser.getModeFromAppLink());
            }
        }

        if (passwordlessType == MODE_UNKNOWN) {
            Log.e(TAG, "Passwordless type is unknown, the intent that started the activity is " + intent);
            finish();
        }

        Fragment initialFragment = isEmailType() ? RequestCodeEmailFragment.newInstance(useMagicLink())
                : RequestCodeSmsFragment.newInstance(useMagicLink());

        getSupportFragmentManager().beginTransaction().add(R.id.com_auth0_container, initialFragment).commit();

        if (invalidMagicLink) {
            Fragment fragment = new InvalidLinkFragment();
            getSupportFragmentManager().beginTransaction().replace(R.id.com_auth0_container, fragment)
                    .addToBackStack(fragment.getClass().getName()).commit();
        }
    } else {
        setPasswordlessType(savedInstanceState.getInt(PASSWORDLESS_TYPE_PARAMETER));
        isInProgress = savedInstanceState.getBoolean(IS_IN_PROGRESS_PARAMETER);
        username = savedInstanceState.getString(USERNAME_PARAMETER);
    }

    errorBuilder = new LoginAuthenticationErrorBuilder(R.string.com_auth0_passwordless_login_error_title,
            R.string.com_auth0_passwordless_login_error_message,
            isEmailType() ? R.string.com_auth0_passwordless_login_invalid_credentials_message_email
                    : R.string.com_auth0_passwordless_login_invalid_credentials_message_sms,
            R.string.com_auth0_db_login_unauthorized_error_message);

    ActivityUIHelper.configureScreenModeForActivity(this, lock);
}

From source file:com.bigpigs.main.MainActivity.java

public void backToFragment(final Fragment fragment) {

    // go back to something that was added to the backstack
    getSupportFragmentManager().popBackStackImmediate(fragment.getClass().getName(), 0);
    isOpened = true;/*from   w w w .ja va  2 s.  c  om*/
}

From source file:com.clemot.julian.easylib.EasyActivity.java

/**
 * Add Fragment/* ww  w .  j a  v  a 2 s  . c om*/
 *
 * @param lastFrag  fragment
 * @param frag      fragment
 * @param id        which child is loaded
 * @param backStack back stack or not
 */
public void addFragment(Fragment lastFrag, Fragment frag, int id, boolean backStack) {
    FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
    fragmentTransaction.add(id, frag, frag.getClass().getName());
    // An optional name for this back stack state, or null.
    if (backStack) {
        fragmentTransaction.addToBackStack(null);
    }
    fragmentTransaction.commit();

    try {
        fragmentManager.executePendingTransactions();
    } catch (IllegalStateException iSe) {

        Log.e("MultiFrag", "Handle crash:" + iSe.getStackTrace());
    }
}

From source file:com.adstrosoftware.animationplayground.MainActivity.java

@Override
public void onAnimationSelected(int animation) {

    Fragment fragment;

    switch (animation) {
    case 0://from   w w w . j  a va2s. c o  m
        fragment = HorizontalFragment.newInstance();
        break;
    case 1:
        fragment = VerticalFragment.newInstance();
        break;
    case 2:
        fragment = ExplodeFragment.newInstance();
        break;
    default:
        fragment = InvalidFragment.newInstance();
    }

    FragmentTransaction fragmentTransaction = getSupportFragmentManager().beginTransaction()
            .replace(R.id.fragmentContainer, fragment, fragment.getClass().getName());

    if (smallScreen) {
        fragmentTransaction.addToBackStack(null);
    }

    fragmentTransaction.commit();
}

From source file:de.unipassau.isl.evs.ssh.app.activity.AppMainActivity.java

@Override
public void onBackPressed() {
    DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
    final Fragment currentFragment = getCurrentFragment();
    if (drawer.isDrawerOpen(GravityCompat.START)) {
        drawer.closeDrawer(GravityCompat.START);
    } else if (currentFragment != null && currentFragment.getClass().equals(WelcomeScreenFragment.class)) {
        super.onBackPressed();
    } else if (currentFragment != null && !currentFragment.getClass().equals(MainFragment.class)) {
        showFragmentByClass(MainFragment.class);
    } else {/* w ww  .  j  av a  2 s  .co  m*/
        super.onBackPressed();
    }
}

From source file:arefin.dialogs.core.BaseDialogFragment.java

/**
 * Utility method for acquiring all listeners of some type for current instance of DialogFragment
 *
 * @param listenerInterface Interface of the desired listeners
 * @return Unmodifiable list of listeners
 * @since 2.1.0/*from  ww w.j  a v  a  2  s . co  m*/
 */
@SuppressWarnings("unchecked")
protected <T> List<T> getDialogListeners(Class<T> listenerInterface) {
    final Fragment targetFragment = getTargetFragment();
    List<T> listeners = new ArrayList<T>(2);
    if (targetFragment != null && listenerInterface.isAssignableFrom(targetFragment.getClass())) {
        listeners.add((T) targetFragment);
    }
    if (getActivity() != null && listenerInterface.isAssignableFrom(getActivity().getClass())) {
        listeners.add((T) getActivity());
    }
    return Collections.unmodifiableList(listeners);
}

From source file:org.voidsink.anewjkuapp.activity.MainActivity.java

private Fragment attachFragment(MenuItem menuItem, boolean saveLastFragment) {

    if (menuItem == null) {
        return null;
    }/*ww  w  .j  av  a2  s .c  o  m*/

    Class<? extends Fragment> startFragment = null;

    switch (menuItem.getItemId()) {
    case R.id.nav_cal:
        startFragment = CalendarFragment.class;
        break;
    case R.id.nav_exams:
        startFragment = ExamFragment.class;
        break;
    case R.id.nav_grades:
        startFragment = AssessmentFragment.class;
        break;
    case R.id.nav_courses:
        startFragment = LvaFragment.class;
        break;
    case R.id.nav_stats:
        startFragment = StatFragment.class;
        break;
    case R.id.nav_mensa:
        startFragment = MensaFragment.class;
        break;
    case R.id.nav_map:
        startFragment = MapFragment.class;
        break;
    case R.id.nav_oeh_news:
        startFragment = OehNewsFragment.class;
        break;
    case R.id.nav_oeh_info:
        startFragment = OehInfoFragment.class;
        break;
    case R.id.nav_oeh_rigths:
        startFragment = OehRightsFragment.class;
        break;
    case R.id.nav_curricula:
        startFragment = CurriculaFragment.class;
        break;
    default:
        break;
    }

    if (startFragment != null) {
        try {
            menuItem.setChecked(true);

            Fragment f = startFragment.newInstance();

            Bundle b = new Bundle();
            b.putCharSequence(Consts.ARG_FRAGMENT_TITLE, menuItem.getTitle());
            f.setArguments(b);

            final Fragment oldFragment = getSupportFragmentManager().findFragmentByTag(Consts.ARG_FRAGMENT_TAG);
            final boolean addToBackstack = (oldFragment != null)
                    && (!oldFragment.getClass().equals(f.getClass()));

            FragmentTransaction ft = getSupportFragmentManager().beginTransaction();
            ft.replace(R.id.container, f, Consts.ARG_FRAGMENT_TAG);
            if (addToBackstack) {
                ft.addToBackStack(f.getClass().getCanonicalName());
            }
            ft.commit();

            if (saveLastFragment) {
                PreferenceWrapper.setLastFragment(this, menuItem.getItemId());
            }

            initActionBar();

            return f;
        } catch (Exception e) {
            Log.w(TAG, "fragment instantiation failed", e);
            Analytics.sendException(this, e, false);
            if (saveLastFragment) {
                PreferenceWrapper.setLastFragment(this, PreferenceWrapper.PREF_LAST_FRAGMENT_DEFAULT);
            }
            return null;
        }
    }
    return null;
}

From source file:com.grarak.kerneladiutor.fragments.other.SettingsFragment.java

private void init() {
    addPreferencesFromResource(R.xml.settings);

    if (Utils.DONATED) {
        getPreferenceScreen().removePreference(findPreference(KEY_AD_VIEW));
    }/*from  w w w. j av a  2  s.co m*/

    SwitchPreferenceCompat forceEnglish = (SwitchPreferenceCompat) findPreference(KEY_FORCE_ENGLISH);
    if (Resources.getSystem().getConfiguration().locale.getLanguage().startsWith("en")) {
        getPreferenceScreen().removePreference(forceEnglish);
    } else {
        forceEnglish.setOnPreferenceChangeListener(this);
    }

    if (Utils.hideStartActivity()) {
        ((PreferenceCategory) findPreference(KEY_USER_INTERFACE))
                .removePreference(findPreference(KEY_MATERIAL_ICON));
    } else {
        findPreference(KEY_MATERIAL_ICON).setOnPreferenceChangeListener(this);
    }

    findPreference(KEY_DARK_THEME).setOnPreferenceChangeListener(this);
    findPreference(KEY_BANNER_RESIZER).setOnPreferenceClickListener(this);
    findPreference(KEY_HIDE_BANNER).setOnPreferenceChangeListener(this);
    findPreference(KEY_ACCENT_COLOR).setOnPreferenceClickListener(this);
    findPreference(KEY_SECTIONS_ICON).setOnPreferenceChangeListener(this);
    findPreference(KEY_APPLY_ON_BOOT_TEST).setOnPreferenceClickListener(this);
    findPreference(KEY_LOGCAT).setOnPreferenceClickListener(this);

    if (Utils.existFile("/proc/last_kmsg") || Utils.existFile("/sys/fs/pstore/console-ramoops")) {
        findPreference(KEY_LAST_KMSG).setOnPreferenceClickListener(this);
    } else {
        ((PreferenceCategory) findPreference(KEY_DEBUGGING_CATEGORY))
                .removePreference(findPreference(KEY_LAST_KMSG));
    }

    findPreference(KEY_DMESG).setOnPreferenceClickListener(this);
    findPreference(KEY_SET_PASSWORD).setOnPreferenceClickListener(this);
    findPreference(KEY_DELETE_PASSWORD).setOnPreferenceClickListener(this);

    if (Build.VERSION.SDK_INT < Build.VERSION_CODES.M
            || !FingerprintManagerCompat.from(getActivity()).isHardwareDetected()) {
        ((PreferenceCategory) findPreference(KEY_SECURITY_CATEGORY))
                .removePreference(findPreference(KEY_FINGERPRINT));
    } else {
        mFingerprint = findPreference(KEY_FINGERPRINT);
        mFingerprint.setEnabled(!Prefs.getString("password", "", getActivity()).isEmpty());
    }

    PreferenceCategory sectionsCategory = (PreferenceCategory) findPreference(KEY_SECTIONS);
    for (NavigationActivity.NavigationFragment navigationFragment : NavigationActivity.sFragments) {
        Fragment fragment = navigationFragment.mFragment;
        int id = navigationFragment.mId;

        if (fragment != null && fragment.getClass() != SettingsFragment.class) {
            SwitchPreferenceCompat switchPreference = new SwitchPreferenceCompat(
                    new ContextThemeWrapper(getActivity(), R.style.Preference_SwitchPreferenceCompat_Material));
            switchPreference.setSummary(getString(id));
            switchPreference.setKey(fragment.getClass().getSimpleName() + "_enabled");
            switchPreference.setChecked(
                    Prefs.getBoolean(fragment.getClass().getSimpleName() + "_enabled", true, getActivity()));
            switchPreference.setOnPreferenceChangeListener(this);
            switchPreference.setPersistent(false);
            sectionsCategory.addPreference(switchPreference);
        }
    }
}