Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/206.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 无法更改TabLayout中的选项卡_Android_Android Fragments_Tabs - Fatal编程技术网

Android 无法更改TabLayout中的选项卡

Android 无法更改TabLayout中的选项卡,android,android-fragments,tabs,Android,Android Fragments,Tabs,我是android编程新手,我正在尝试通过触摸选项卡标题文本来更改选项卡。这是我的密码 主要活动 <android.support.design.widget.AppBarLayout> <android.support.design.widget.CollapsingToolbarLayout> <ImageView android:id="@+id/image" android:layo

我是android编程新手,我正在尝试通过触摸选项卡标题文本来更改选项卡。这是我的密码

主要活动

<android.support.design.widget.AppBarLayout>

    <android.support.design.widget.CollapsingToolbarLayout>

        <ImageView
            android:id="@+id/image"
            android:layout_width="fill_parent"
            android:layout_height="match_parent"
            android:src="@drawable/test_image"
            app:layout_behavior="@string/appbar_scrolling_view_behavior"
            android:scaleType="centerCrop" />

        <android.support.design.widget.TabLayout
            android:id="@+id/tabs"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="top"
            app:layout_behavior="@string/appbar_scrolling_view_behavior"
            android:background="@android:color/transparent"
            app:layout_collapseMode="pin"
            />
        <android.support.v7.widget.Toolbar/>
    </android.support.design.widget.CollapsingToolbarLayout>

</android.support.design.widget.AppBarLayout>
此应用程序的输出是一个表布局,其中片段作为包含cardview的选项卡。现在,当我触摸标签标题时,我可以切换到不同的标签,也可以用手指滑动碎片来切换标签

tabLayout.setOnTabSelectedListener(new TabLayout.OnTabSelectedListener() {
        @Override
        public void onTabSelected(TabLayout.Tab tab) {


            CharSequence _header = tab.getText();
            Selected_Tab_Header = String.valueOf(_header);

            if (Selected_Tab_Header == "Tab1") {
                headerImage.setImageResource(R.drawable.someImage);

            }

        }

        @Override
        public void onTabReselected(TabLayout.Tab tab) {

        }

        @Override
        public void onTabUnselected(TabLayout.Tab tab) {
        }
    });

我无法再切换选项卡,即当我触摸选项卡标题时,虽然代码已触发(图像更改),但选项卡未切换,但用手指滑动选项卡仍然有效。我的代码中是否缺少任何内容?或者有其他方法来实现这一点吗?

不要忘记
在您的
屏幕中选择的
viewPager.setCurrentItem(tab.getPosition())

  public void onTabSelected(TabLayout.Tab tab) {

        CharSequence _header = tab.getText();
        Selected_Tab_Header = String.valueOf(_header);

        if (Selected_Tab_Header == "Tab1") {
             headerImage.setImageResource(R.drawable.someImage);
        }

        if (viewPager != null) {
             viewPager.setCurrentItem(tab.getPosition());
        }
   }
希望这有帮助

  public void onTabSelected(TabLayout.Tab tab) {

        CharSequence _header = tab.getText();
        Selected_Tab_Header = String.valueOf(_header);

        if (Selected_Tab_Header == "Tab1") {
             headerImage.setImageResource(R.drawable.someImage);
        }

        if (viewPager != null) {
             viewPager.setCurrentItem(tab.getPosition());
        }
   }