当前位置: 首页>>代码示例>>Java>>正文


Java FragmentManager.getBackStackEntryCount方法代码示例

本文整理汇总了Java中android.app.FragmentManager.getBackStackEntryCount方法的典型用法代码示例。如果您正苦于以下问题:Java FragmentManager.getBackStackEntryCount方法的具体用法?Java FragmentManager.getBackStackEntryCount怎么用?Java FragmentManager.getBackStackEntryCount使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在android.app.FragmentManager的用法示例。


在下文中一共展示了FragmentManager.getBackStackEntryCount方法的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: goBack

import android.app.FragmentManager; //导入方法依赖的package包/类
@Override
public void goBack() {
    FragmentManager fragmentManager = getFragmentManager();
    if (mDisplayMode == DisplayMode.MESSAGE_VIEW) {
        showMessageList();
    } else if (fragmentManager.getBackStackEntryCount() > 0) {
        fragmentManager.popBackStack();
    } else if (mMessageListFragment.isManualSearch()) {
        finish();
    } else if (!mSingleFolderMode) {
        onAccounts();
    } else {
        onShowFolderList();
    }
}
 
开发者ID:philipwhiuk,项目名称:q-mail,代码行数:16,代码来源:MessageList.java

示例2: changeFragment

import android.app.FragmentManager; //导入方法依赖的package包/类
private void changeFragment(Fragment newFragment, FragmentsAvailable newFragmentType, boolean withoutAnimation) {
	FragmentManager fm = getFragmentManager();
	FragmentTransaction transaction = fm.beginTransaction();

	/*if (!withoutAnimation && !isAnimationDisabled && currentFragment.shouldAnimate()) {
		if (newFragmentType.isRightOf(currentFragment)) {
			transaction.setCustomAnimations(R.anim.slide_in_right_to_left,
					R.anim.slide_out_right_to_left,
					R.anim.slide_in_left_to_right,
					R.anim.slide_out_left_to_right);
		} else {
			transaction.setCustomAnimations(R.anim.slide_in_left_to_right,
					R.anim.slide_out_left_to_right,
					R.anim.slide_in_right_to_left,
					R.anim.slide_out_right_to_left);
		}
	}*/

	if (newFragmentType != FragmentsAvailable.DIALER
			&& newFragmentType != FragmentsAvailable.CONTACTS_LIST
			&& newFragmentType != FragmentsAvailable.CHAT_LIST
			&& newFragmentType != FragmentsAvailable.HISTORY_LIST) {
		transaction.addToBackStack(newFragmentType.toString());
	} else {
		while (fm.getBackStackEntryCount() > 0) {
			fm.popBackStackImmediate(null, FragmentManager.POP_BACK_STACK_INCLUSIVE);
		}
	}

	transaction.replace(R.id.fragmentContainer, newFragment, newFragmentType.toString());
	transaction.commitAllowingStateLoss();
	fm.executePendingTransactions();

	currentFragment = newFragmentType;
}
 
开发者ID:treasure-lau,项目名称:Linphone4Android,代码行数:36,代码来源:LinphoneActivity.java

示例3: onBackPressed

import android.app.FragmentManager; //导入方法依赖的package包/类
@Override
public void onBackPressed() {
    FragmentManager fm = getFragmentManager();
    FragmentTransaction ft = fm.beginTransaction();
    DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
    if (drawer.isDrawerOpen(GravityCompat.START)) {
        drawer.closeDrawer(GravityCompat.START);
    } else {
        // 백스택이 존재할 떄까지
        if (fm.getBackStackEntryCount() > 0)
        {
            fm.popBackStack();
            ft.commit();
        }
        // 백스택이 없는 경우
        else
        {
            super.onBackPressed();
        }
    }
}
 
开发者ID:JoMingyu,项目名称:Daejeon-People,代码行数:22,代码来源:Main.java

示例4: onBackPressed

import android.app.FragmentManager; //导入方法依赖的package包/类
@Override
public void onBackPressed() {
    FragmentManager fm = getFragmentManager();
    if (fm.getBackStackEntryCount() > 0) {
        fm.popBackStack();
    } else {
        new AlertDialog.Builder(this)
                .setTitle("Exit")
                .setMessage("Are you sure you want to exit?")
                .setNegativeButton(android.R.string.no, null)
                .setPositiveButton(android.R.string.yes, new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int which) {
                        finish();
                    }
                }).create().show();
    }
}
 
开发者ID:BranchMetrics,项目名称:Branch-Monster-Factory-Example-Android-Instant-Apps,代码行数:19,代码来源:MonsterViewerActivity.java

示例5: onOptionsItemSelected

import android.app.FragmentManager; //导入方法依赖的package包/类
@Override
public boolean onOptionsItemSelected(MenuItem item) {
    switch (item.getItemId()) {
        case android.R.id.home:
            FragmentManager fm = getFragmentManager();
            if (fm.getBackStackEntryCount() > 0) {
                fm.popBackStack(null, FragmentManager.POP_BACK_STACK_INCLUSIVE);
            } else {
                finish();
            }
            return true;
        default:
            return super.onOptionsItemSelected(item);
    }
}
 
开发者ID:weiwenqiang,项目名称:GitHub,代码行数:16,代码来源:BaseActivity.java

示例6: onBackPressed

import android.app.FragmentManager; //导入方法依赖的package包/类
@Override
public void onBackPressed() {
    FragmentManager fm = getFragmentManager();

    if (fm.getBackStackEntryCount() > 0) {
        fm.popBackStack();
        mCurrentPath = FileUtils.cutLastSegmentOfPath(mCurrentPath);
        updateTitle();
    } else {
        setResult(RESULT_CANCELED);
        super.onBackPressed();
    }
}
 
开发者ID:qq1198,项目名称:mtoolbox,代码行数:14,代码来源:FilePickerActivity.java

示例7: replaceFragment

import android.app.FragmentManager; //导入方法依赖的package包/类
/**
 *
 *
 * @param position is the new fragment
 */
private void replaceFragment(int position) {
    FragmentManager fragmentManager = getFragmentManager();
    Fragment fragment = null;
    String fragment_tag = "";

    //Delete not initialized state
    if (position == -1) {
        position = 0;
    }

    switch (position) {
        case POSITION_MAIN:
            fragment_tag = MainFragment.class.getName();
            fragment = fragmentManager.findFragmentByTag(fragment_tag);
            if (fragment == null) {
                fragment = new MainFragment();
            }
            break;
        case POSITION_MAP:
            fragment_tag = MyMapFragment.class.getName();
            fragment = fragmentManager.findFragmentByTag(fragment_tag);
            if (fragment == null) {
                fragment = new MyMapFragment();
            }
            break;
        case POSITION_PREDICTION:
            fragment_tag = PredictionFragment.class.getName();
            fragment = fragmentManager.findFragmentByTag(fragment_tag);
            if (fragment == null) {
                fragment = new PredictionFragment();
            }
            break;
        case POSITION_PROTOCOLO:
            fragment_tag = ProtocolosFragment.class.getName();
            fragment = fragmentManager.findFragmentByTag(fragment_tag);
            if (fragment == null) {
                fragment = new ProtocolosFragment();
            }
            break;
        case POSITION_LAST_AVISO:
            DownloadFilesUtils.downloadPdf(this,this, DownloadFilesUtils.EXTERNAL_STORAGE_PERMISSION_REQUEST_CODE_BOLETIN_DIARIO);
            return;
        case POSITION_INFO:
            fragment_tag = InfoFragment.class.getName();
            fragment = fragmentManager.findFragmentByTag(fragment_tag);
            if (fragment == null) {
                fragment = new InfoFragment();
            }
            break;
        case POSITION_FEEDBACK:
            fragment_tag = FeedbackFragment.class.getName();
            fragment = fragmentManager.findFragmentByTag(fragment_tag);
            if (fragment == null) {
                fragment = new FeedbackFragment();
            }
            break;
    }

    FragmentTransaction transaction = fragmentManager.beginTransaction();
    transaction.replace(R.id.content_frame, fragment, fragment_tag);
    if (position != 0 && fragmentManager.getBackStackEntryCount() == 0) {
        transaction.addToBackStack(null);
    }
    transaction.commit();
    mCurrentDrawerItem = position;

}
 
开发者ID:medialab-prado,项目名称:puremadrid,代码行数:73,代码来源:MainActivity.java

示例8: onBackPressed

import android.app.FragmentManager; //导入方法依赖的package包/类
@Override
public void onBackPressed() {
    if (isSearchViewExpanded()) {
        hideSearchView();
    } else {
        final FragmentManager fm = getFragmentManager();
        mBackStackEntryPopped = fm.popBackStackImmediate();
        final int entryCnt = fm.getBackStackEntryCount();

        if (entryCnt > 0) {
            final FragmentManager.BackStackEntry entry = fm.getBackStackEntryAt(entryCnt - 1);
            final Fragment fragment = fm.findFragmentByTag(entry.getName());

            if (fragment instanceof CurrentFeedFragment) {
                mBottomNavigationView.setSelectedItemId(R.id.action_view_current_feed);
            } else if (fragment instanceof FeedSubscriptionsFragment) {
                mBottomNavigationView.setSelectedItemId(R.id.action_view_feed_subscriptions);
            } else if (fragment instanceof SavedEntriesFragment) {
                mBottomNavigationView.setSelectedItemId(R.id.action_view_saved_entries);
            } else {
                mBackStackEntryPopped = fm.popBackStackImmediate();
                mBottomNavigationView.setSelectedItemId(R.id.action_view_feed_subscriptions);
            }

            mBackStackEntryPopped = false;
        } else {
            super.onBackPressed();
        }
    }
}
 
开发者ID:Applications-Development,项目名称:SimpleRssReader,代码行数:31,代码来源:MainActivity.java

示例9: clearBackStack

import android.app.FragmentManager; //导入方法依赖的package包/类
private void clearBackStack(FragmentManager fragmentManager ){
    while (fragmentManager.getBackStackEntryCount() > 0) {
        fragmentManager.popBackStackImmediate();
    }
}
 
开发者ID:medialab-prado,项目名称:puremadrid,代码行数:6,代码来源:MainActivity.java


注:本文中的android.app.FragmentManager.getBackStackEntryCount方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。