Как мы можем обойти пустой заголовок в PagerTitleStrip и PagerTabStrip?
есть проблема с PagerTitleStrip и PagerTabStrip с поддержкой-v4 (версия 23.0.0).
вид заголовка a ViewPager
при использовании PagerTitleStrip
или PagerTabStrip
и версия 23.0.0 (для поддержки Marshmallow/Android 6.0)support-v4
библиотека не правильно.
Issue is tracked and scheduled for Future Release на: https://code.google.com/p/android/issues/detail?id=183127 https://code.google.com/p/android/issues/detail?id=184715
Update: теперь это было разрешено в 23.1.0.
4 ответов
промежуточным решением в ожидании исправленного выпуска является использование копии последней известной хорошей версии этих классов (22.1.0) вместо той, которая поставляется в комплекте с библиотекой поддержки.
поместите прикрепленные файлы в свой проект и настройте свой ViewPager
С этими классами вместо этого.
Примечание: не изменяйте их имя пакета, поскольку они полагаются на защищенные классы пакета в библиотеке поддержки.
пример использования нашего "нового"PagerTabStrip
класс:
<android.support.v4.view.ViewPager
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<android.support.v4.view.PagerTabStripV22
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="top"/>
</android.support.v4.view.ViewPager>
мой "комментарий" в качестве ответа, поэтому он не упускается из виду.
во-первых, когда вы загружаете файлы из ссылок, они не будут правильными именами файлов, т. е.java-файлы будут отсутствовать "V "для" V22", поэтому вам нужно переименовать оба файла в " PagerTitleStripV22.java " и " PagerTabStripV22.ява." Затем следуйте этим инструкциям, опубликованным кем-то другим: создайте пакет "android.поддержка.В4.просмотр " в вашем проекте и поместите прикрепленные файлы #31 в ваш проект внутри создан пакет и изменить android.поддержка.В4.вид.PagerTabStrip для android.поддержка.В4.вид.PagerTabStripV22 в файле макета.
простое решение для устранения этой проблемы.
//after setting the adapter
viewPager.post(new Runnable() {
@Override
public void run() {
viewPager.setCurrentItem(1, false);
viewPager.setCurrentItem(0, false);
viewPager.postInvalidate();
}
});
комментарий приведенный выше код после исправления.