【问题标题】:Android Studio multiple fragmentsAndroid Studio 多个片段
【发布时间】:2016-03-31 13:41:46
【问题描述】:
我正在设计一个音乐播放器应用程序,这是我第二次使用 Android Studio 和 Fragment。我已经观看了很多关于此的教程视频,但我无法显示多个片段。也许使用片段不是解决这个问题的方法。但基本上我现在拥有的是顶部的固定菜单和其下方的 5 个片段(彼此重叠)。
我希望通过单击每个按钮来加载一个片段,这样您就会有一个活动,但在按下按钮时会加载 5 个片段。但是我现在遇到的问题不是停止一个片段并加载另一个片段,而是将它们彼此叠加加载。有没有办法做到这一点?
下面是我想到的设计图片。蓝色框是五个片段所在的位置,现在它们正在重叠。任何帮助将不胜感激:)
编辑:原来答案是我需要为所有片段定义一个布局。谢谢大家。
【问题讨论】:
标签:
android
android-fragments
android-studio
【解决方案1】:
请发布代码。但这是我能从你的问题中弄清楚的,
我假设你只是一次又一次地使用FragmentManager.beginTransaction.add()。
如果是这种情况,请将您的代码更改为
FragmentManager.beginTransaction().replace(
containerViewID,
new FragmentYouWantToReplace
);
这样做是删除以前的片段并添加这个新片段。
因此,您可以在活动加载期间使用 add() 获得默认片段,但对于每个按钮单击,您都使用 replace()。
【解决方案2】:
当您调用一个新片段时,您应该始终替换相同的布局,即您要显示信息的布局,如下所示:
frag_results frag_results = new frag_results();
FragmentManager manager = getSupportFragmentManager();
manager.beginTransaction().replace(R.id.framelayout_secundary, frag_results, frag_results.getTag()).commit();