Android tabMode=";“可滚动”;不起作用
我正在使用Android设计支持库中的TabLayout。我用材料设计主题。下面是代码 活动\u可滚动\u Tab.xmlAndroid tabMode=";“可滚动”;不起作用,android,android-layout,android-fragments,Android,Android Layout,Android Fragments,我正在使用Android设计支持库中的TabLayout。我用材料设计主题。下面是代码 活动\u可滚动\u Tab.xml <android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_pare
<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<android.support.design.widget.AppBarLayout
<android.support.design.widget.TabLayout
android:id="@+id/tabs"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:tabMode="scrollable"/>
</android.support.design.widget.AppBarLayout>
<android.support.v4.view.ViewPager
android:id="@+id/viewpager"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_behavior="@string/appbar_scrolling_view_behavior" />
</android.support.design.widget.CoordinatorLayout>
也许您应该以编程方式设置选项卡模式?尝试在TabLayaut
实例上调用setTabMode
方法
tabLayout.setTabMode(tabLayout.MODE可滚动)代码>
我不知道为什么它对你不起作用,但我在几周前测试了这些模式,对我来说,滚动模式在所有Android版本上都起作用
还要检查您是否使用了最新版本的设计支持库,也许您使用了一些以前的有错误的版本?要使选项卡在kitkat和Jelly bean设备中可滚动,您可以参考本教程
谷歌文档也为此而存在
它经过了很好的测试,在所有设备上都适用于我请尝试下面的xml用于您的表格布局
您的FragmentPagerAdapter看起来有点奇怪,为什么要将您的片段添加到列表中?你试过添加吗
adapter.notifyDataSetChanged();
以前
viewPager.setAdapter(adapter);
在setupViewPager?上,我的案例有些不同,我尝试过的大多数答案都没有解决这个问题
答案是addxmlns:app=”http://schemas.android.com/apk/res-auto“
在您的android.support.design.widget.CoordinatorLayout
中
我在这里发布完整的代码
<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent">
<android.support.design.widget.AppBarLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="?attr/colorPrimary"
app:layout_scrollFlags="scroll|enterAlways"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light" />
<android.support.design.widget.TabLayout
android:id="@+id/tabs"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:tabMode="scrollable"/>
</android.support.design.widget.AppBarLayout>
<android.support.v4.view.ViewPager
android:id="@+id/viewpager"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_behavior="@string/appbar_scrolling_view_behavior" />
</android.support.design.widget.CoordinatorLayout>
添加xmlns:app=”后http://schemas.android.com/apk/res-auto“
在我的TabLayout xml文件中,Tab scroll函数在Jelly bean、Kitkat和棒棒糖中运行良好 对于像我这样的初学者来说,这只是一个温馨的提醒,它需要许多项目(超过屏幕宽度的大小)才能使其可滚动,所以如果您只使用两个项目进行测试,不要期望它能够滚动,这与您可能要查找的“滚动到切换选项卡”不同,tabMode=“scrollable”仅在不带开关的情况下滚动。在kitkat和Jelly bean设备中,TabLayout正在滚动并将我带到另一个布局。如果我单独滚动标签,在棒棒糖中,标签本身滚动,但在其他设备中,标签滚动,并导航到其他页面。例如:如果1,2..10是标签名称,如果我在棒棒糖标签中滚动这些标签,只需滚动它就不会导航到其他布局,而在其他设备中,标签滚动并导航到第二个标签,然后是第三个标签,依此类推。你知道有什么问题吗?我已经更新了我的源代码。我遵循的代码来自,示例来自Android studio,我从Android studio复制并粘贴了文件,并在Eclipse中创建,因为我的项目在Eclipse中。是否知道可能存在的问题以及检查代码的位置。我将尝试使用该链接。我通过为选项卡布局“activity_scrollable_Tab.xml”添加xmlns:app=”“来解决此问题我通过为选项卡布局添加xmlns:app=”““activity\u scrollable\u Tab.xml”解决了这个问题。
viewPager.setAdapter(adapter);
<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent">
<android.support.design.widget.AppBarLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="?attr/colorPrimary"
app:layout_scrollFlags="scroll|enterAlways"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light" />
<android.support.design.widget.TabLayout
android:id="@+id/tabs"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:tabMode="scrollable"/>
</android.support.design.widget.AppBarLayout>
<android.support.v4.view.ViewPager
android:id="@+id/viewpager"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_behavior="@string/appbar_scrolling_view_behavior" />
</android.support.design.widget.CoordinatorLayout>