- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我使用 FragmentTabHost 创建了三个选项卡。现在我需要让所有导航都在选项卡下。我怎样才能得到这个。我需要获得使用 TabGroupActivity 获得的结果。
标签1 ---> fragment 1--> fragment 2
选项卡2 ---> fragment 3
选项卡3 ---> fragment 4---> fragment 5
我用过 fragmentTransaction.add()、fragmentTransaction.remove()、fragmentTransaction.replace()。这三种方法都没有给出解决办法。
Replace 方法在现有 fragment View 之上显示新的 fragment View 。
Remove 和Add,从这两个中remove 才有效,add 无效。
提前致谢。
TabHostMain.java
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.bottom_tabs);
mTabHost = (FragmentTabHost) findViewById(android.R.id.tabhost);
mTabHost.setup(this, getSupportFragmentManager(), R.id.realtabcontent);
View view;
view=getTabView(R.drawable.ic_launcher);
Bundle b = new Bundle();
b.putString("key", "Simple");
mTabHost.addTab(mTabHost.newTabSpec("simple").setIndicator(view),Fragment1.class, null);
b = new Bundle();
b.putString("key", "Contacts");
view=getTabView(R.drawable.ic_launcher);
mTabHost.addTab(mTabHost.newTabSpec("contacts").setIndicator(view), Fragment2.class, null);
b = new Bundle();
b.putString("key", "Custom");
view=getTabView(R.drawable.ic_launcher);
mTabHost.addTab(mTabHost.newTabSpec("custom").setIndicator(view),Fragment3.class, null);
}
fragment 3.java
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) {
View view=LayoutInflater.from(getActivity()).inflate(R.layout.activity_second, null);
((TextView)view.findViewById(R.id.second_act_text)).setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
FragmentManager fm=getChildFragmentManager();
FragmentTransaction fragmentTransaction=fm.beginTransaction();
fragmentTransaction.replace(R.id.second_activity, new Fragment1()).addToBackStack(null).commit();
}
});
return view;
}
最佳答案
stackoverflow 上已经多次讨论了每个选项卡中不同 fragment 导航堆栈的概念,例如一个例子:
Separate Back Stack for each tab in Android using Fragments
无需管理您自己的自定义导航返回堆栈即可实现此目的的一种简单/粗略的方法是在每个选项卡下都有一个根 fragment ,然后每当根 fragment 想要导航到另一个 fragment ( fragment B)时,只需显示一个新Activity最初使用 fragment B,该 Activity 将有自己的 fragment 导航返回堆栈。
Tab1 --->root frag1 --> Activity(自己的导航返回栈)--> frag2
Tab2 --->root frag3
Tab3 --->root frag4 --> Activity(自己的导航返回栈)--> frag5 --> frag6 --> frag7
执行类似操作的应用示例实际上是 StackAnywhere应用程序。它大量使用选项卡,但当您在这些选项卡内导航时,它通常会将导航移动到新的 Activity。然而,采用这种方法的 YMMV。
关于android - 如何使 Fragment Host 中的特定选项卡具有多个 fragment 导航,如 tabgroupactivity,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16558193/
我有一个使用标签组 Activity 的应用程序。选项卡在其内部打开每个 Activity 的方式一切正常,但是当用户注销时我的麻烦来了。我有一个确认用户想要注销的对话框,当他们单击"is"时,它会向
我用过Experience - Multiple Android Activities in a TabActivity实现选项卡。 我有以下条件。 MainActivity 扩展 TabActivi
我必须开发一个 android 应用程序。 这里我使用了标签组 Activity 。 我在我的适配器文件中使用了以下代码: convertView.setOnClickListener(new
如果我在我的应用程序中使用编辑框,我会在我的应用程序中使用 Tabgroupactivity。当我单击编辑框时,键盘打开。在这个时候,如果按下后退按钮,我的应用程序会退两步。以下是我的 tabgrou
我使用 FragmentTabHost 创建了三个选项卡。现在我需要让所有导航都在选项卡下。我怎样才能得到这个。我需要获得使用 TabGroupActivity 获得的结果。 标签1 ---> fra
我在 Xamarin 中使用 Tabgroupactivity 来开发一个机器人应用程序。我有一个包含 4 个子 Activity 的 TabGroupActivity。 OnResume() 未在任
我是一名优秀的程序员,十分优秀!