滑动选项卡布局中的标签不可点击

4
我正在Android中实现工具栏下的滑动选项卡布局,所有内容都显示在屏幕上并正常工作,但触摸选项卡不起作用 - 只有滑动才有效。
我主要需要禁用滑动并将其用作普通选项卡。我错过了什么吗?
我相信我已经正确设置了:
   ViewPager viewPager = (ViewPager) findViewById(R.id.viewPage);
        viewPager.setAdapter(new MyPagerAdapter(getSupportFragmentManager(), getFragments()));

        SlidingTabLayout slidingTabLayout = (SlidingTabLayout) findViewById(R.id.tabs);
        slidingTabLayout.setDistributeEvenly(true);
        slidingTabLayout.setViewPager(viewPager);

在XML中:

<android.support.v7.widget.Toolbar
    android:layout_width="match_parent"
    android:layout_alignParentTop="true"
    android:layout_height="60dp"
    android:id="@+id/toolbar"
    android:minHeight="?attr/actionBarSize"
    android:background="@color/da_blue" />

<dapulse.dapulse.com.dapulse.app.SlidingTabLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_below="@id/toolbar"
    android:id="@+id/tabs"></dapulse.dapulse.com.dapulse.app.SlidingTabLayout>


<android.support.v4.view.ViewPager

    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:id="@+id/viewPage"></android.support.v4.view.ViewPager>
3个回答

1

好的,所以这种行为(点击选项卡以移动到下一个选项卡)从一开始就存在。直到我找到解决方案之前,它对我没有用。由于某种原因,在我调用了“bringToFront()”后,它们才开始工作。一旦我这样做了,它们就像应该做的那样工作了!


3
出现问题的原因可能是您将SlidingTabLayout与ViewPager(match_parent)重叠了。 在您的ViewPager中添加android:layout_below="@id/tabs",它应该就可以正常工作了。 - mrek

0
遇到了同样的问题。 我的应用程序在最新设备(6)上可以运行,但在旧设备(4.4.2)上无法运行。
<android.support.v4.view.ViewPager
  android:layout_width="match_parent"
  android:layout_height="0dp"
  android:layout_weight="1"
  android:id="@+id/notification_viewpager"/>

给ViewPager设置权重,并将高度设置为0对我有用。


0

我对你的代码进行了一些修改,现在应该可以工作了:

<android.support.v7.widget.Toolbar
    android:id="@+id/barLayout"
    android:layout_width="match_parent"
    android:layout_alignParentTop="true"
    android:layout_height="60dp"
    android:id="@+id/toolbar"
    android:minHeight="?attr/actionBarSize"
    android:background="@color/da_blue" />

<dapulse.dapulse.com.dapulse.app.SlidingTabLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_below="@id/toolbar"
    android:id="@+id/tabs"></dapulse.dapulse.com.dapulse.app.SlidingTabLayout>


<android.support.v4.view.ViewPager

    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_below="@id/barLayout"
    android:id="@+id/viewPage"></android.support.v4.view.ViewPager>

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接