Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/193.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在android Tabhost中更改选项卡内容?_Android_Android Tabhost - Fatal编程技术网

如何在android Tabhost中更改选项卡内容?

如何在android Tabhost中更改选项卡内容?,android,android-tabhost,Android,Android Tabhost,我有三个标签Tab1,tab2,Tab3。在tab1中,我正在加载page1.java。在第1页有一个“下一步”按钮。我需要切换到page2.java,同时点击Page1.java上的“下一步”按钮。我只需要更改内容。我需要这些标签作为永久标签。有可能吗。 我在点击下一个按钮时就是这样做的 Intent nextPageIntent = new Intent(context, Page2.class); startActivity(nextPageIntent); 请帮助我。tabHost.s

我有三个标签Tab1,tab2,Tab3。在tab1中,我正在加载page1.java。在第1页有一个“下一步”按钮。我需要切换到page2.java,同时点击Page1.java上的“下一步”按钮。我只需要更改内容。我需要这些标签作为永久标签。有可能吗。 我在点击下一个按钮时就是这样做的

Intent nextPageIntent = new Intent(context, Page2.class);
startActivity(nextPageIntent);

请帮助我。

tabHost.setCurrentTab(2)
应该这样做。

更新:

因此,您需要在要更改活动的选项卡中设置一个
ActivityGroup

    TabHost tabHost = getTabHost();

    tabHost.addTab(tabHost.newTabSpec("tab1").setIndicator("Page1").setContent(
            new Intent(this, Page1.class)));
    tabHost.addTab(tabHost.newTabSpec("tab2").setIndicator("Page2").setContent(
            new Intent(this, Page2.class)));
    tabHost.addTab(tabHost.newTabSpec("tab3").setIndicator("Page3").setContent(
            new Intent(this, Page3.class)));
Page1
注意第一个选项卡中显示的活动。使用
setContentView
可以在触发操作后将另一个视图置于前面

    Intent intent = new Intent(context, Page2.class);
    intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);

    View view = Page1.group.getLocalActivityManager().
                startActivity(intent).getPage2View();

    Page1.group.setContentView(view);
您需要告诉ActivityGroup哪个视图将位于顶部,并设置相应的标志,以便该视图位于顶部

当然,现在你必须跟踪哪些活动在前面,它们的行为如何,以及如果按下后退按钮会发生什么。但这给了您定制行为的空间

更多信息来自:。

您可以尝试一下

因此,将所有页面(一个选项卡)保存在单独的片段中。加载片段1-即最初的第1页,单击下一步按钮,按如下方式替换片段:

nextBtn.setOnClickListener(new OnClickListener(){

    @Override
    public void onClick(View arg0) {

        Page2Fragment fragment = (Page2Fragment)myFragmentManager.findFragmentByTag(TAG_1);

        if (fragment == null) {

            //load page 2 in fragment
            FragmentTransaction fragmentTransaction = myFragmentManager.beginTransaction();
            fragmentTransaction.replace(R.id.maincontainer, myFragment1, TAG_1);
            fragmentTransaction.commit();
        }
    }
});

希望有帮助。

需要更多相关代码。我就是这样做的。但是账单会被扣除的。它将作为新页面加载。@SHIDHI-然后需要使用方法
setCurrenttab
设置选项卡。请参阅更新。我不是说更改选项卡。我想更改tab1的内容。现在是第1页,按下“下一步”按钮,我需要将其从第1页更改为第2页。我不是说更改选项卡。我想更改tab1的内容。现在是第1页,按下下一步按钮,我需要将其从第1页更改为第2页。