PagerTabStrip未在针对Android 6.X(N)

时间:2016-06-26 10:57:09

标签: android android-viewpager android-support-library android-7.0-nougat pagertabstrip

我有一个使用ViewPagerPagerTabStrip的现有应用程序,这已经与Android SDK和com.android.support:appcompat-v7库的各种版本一起使用了很长时间。我刚刚将我的应用的编译和目标SDK版本从23提升到24,将com.android.support:appcompat-v7库版本从23.4.0提升到24.0.0。我现在看到PagerTabStrip完全遗漏了ViewPager。 (不只是PagerTabStrip中的标题丢失...... PagerTabStrip在呈现视图时完全没有ViewPager。)

这就是我在布局文件中声明ViewPagerPagerTabStrip视图的方式:

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

    <android.support.v4.view.PagerTabStrip
        android:id="@+id/pagerTabStrip"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="top"
        android:paddingTop="8dp"
        android:paddingBottom="8dp"
        android:textColor="@android:color/white"
        android:background="@color/view_bg_blue" />

</android.support.v4.view.ViewPager>

有人能发现我做错的事情,或者这可能是ViewPagerPagerTabStrip中的错误吗?

2 个答案:

答案 0 :(得分:14)

这是在Android支持库中解决问题之前的临时解决方法:

((ViewPager.LayoutParams) pagerTabStrip.getLayoutParams()).isDecor = true;

请参阅此处,以便更全面地讨论问题的状态: https://code.google.com/p/android/issues/detail?id=213359

答案 1 :(得分:0)

We’ll start with the layout for our activity (**activity_pager_tab_strip.xml**), which in this case will just be a ViewPager containing a PagerTabStrip:
[![enter image description here][1]][1]
  [1]: http://i.stack.imgur.com/LUvF9.png

import android.os.Bundle;
import android.support.v4.view.ViewPager;
import android.support.v7.app.AppCompatActivity;
public class PagerTabStripActivity extends AppCompatActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_pager_tab_strip);
        TabsPagerAdapter adapter = new TabsPagerAdapter(getSupportFragmentManager());
        ViewPager pager = (ViewPager) findViewById(R.id.pager);
        pager.setAdapter(adapter);
    }
}
Example: http://photo-wonder.blogspot.com/2016/09/using-pagertabstrip-with-viewpager.html