Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.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 tabMode=";“可滚动”;不起作用_Android_Android Layout_Android Fragments - Fatal编程技术网

Android tabMode=";“可滚动”;不起作用

Android 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设计支持库中的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_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?

上,我的案例有些不同,我尝试过的大多数答案都没有解决这个问题

答案是add
xmlns: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>