android–Fragment替换现有的片段

android–Fragment替换现有的片段,第1张

概述我有MainActivity,它包含ListFragment和framelayout,我能够在项目点击时更改列表上的片段.我有一个问题是使用新的Fragment2替换现有的Fragment1,在按钮上单击Fragment1,Fragment2应该替换Fragment1,并且左边应该有相同的ListFragment,并且应该正确处理后退按钮,这意味着当我在Fra

我有MainActivity,它包含ListFragment和framelayout,我能够在项目点击时更改列表上的片段.

我有一个问题是使用新的Fragment2替换现有的Fragment1,在按钮上单击Fragment1,Fragment2应该替换Fragment1,并且左边应该有相同的ListFragment,并且应该正确处理后退按钮,这意味着当我在Fragment2中时并按回按钮它应显示相同的ListFragment和Fragment1.

解决方法:

你需要使用.replace来切换这两个片段,你还需要添加将原始文件添加到backstack以便你可以调用它,并且你需要覆盖后退键 *** 作才能以这种方式运行.它看起来像这样(使用我的一个项目中的代码,使用支持库):

要显示您的第一个片段:

menu = new MenuFragment_Main();   // instantiate fragmentgetSupportFragmentManager().beginTransaction().replace(R.ID.pane, menu).commit();  // display fragment

要将其交换为新片段并将其添加到backstack:

ListFragment_ShopListItem shopList = new ListFragment_ShopListItem();  // instantiate fragmentgetSupportFragmentManager().beginTransaction().replace(R.ID.pane, shopList).addToBackStack(null).commit();  //  replace original fragment with new fragment, add original to backstack

并覆盖后退键以返回上一个片段:

public voID onBackpressed() {    FragmentManager fm = getActivity().getSupportFragmentManager();    fm.popBackStack();    return;}
总结

以上是内存溢出为你收集整理的android – Fragment替换现有的片段全部内容,希望文章能够帮你解决android – Fragment替换现有的片段所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1097618.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-28
下一篇 2022-05-28

发表评论

登录后才能评论

评论列表(0条)

保存