Мені потрібно створити інтерфейс на кшталт Google Newssstand, який є свого роду ViewPager (горизонтальна прокрутка) над заголовком, що згортається (вертикальна прокрутка). Однією з моїх вимог є використання нової бібліотеки підтримки дизайну, представленої на Google IO 2015. ( http://android-developers.blogspot.ca/2015/05/android-design-support-library.html )
На основі вибірки, створеної Крісом Бейнсом ( https://github.com/chrisbanes/cheesesquare ), я дійшов до того, що я в змозі виконати руйнуючу поведінку, але з базовим LinearLayout (без горизонтальної прокрутки).
Я спробував замінити LinearLayout ViewPager, і у мене з’явився порожній екран. Я грав з: шириною, вагою та всіма видами груп перегляду, але .... все-таки порожнім екраном. Схоже, ViewPager і NestedScrollView не подобаються один одному.
Я спробував вирішити за допомогою HorizontalScrollView: він працює, але я втрачаю перевагу функції PagerTitleStrip та фокус на одній панелі (я можу зупинити горизонтально між 2 панелями).
Зараз у мене більше немає ідей, якщо хтось може привести мене до рішення ...
Дякую
Ось мій останній файл компонування:
<?xml version="1.0" encoding="utf-8"?>
<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="@dimen/header_height"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar">
<android.support.design.widget.CollapsingToolbarLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
app:contentScrim="?attr/colorPrimary"
app:expandedTitleMarginEnd="64dp"
app:expandedTitleMarginStart="48dp"
app:layout_scrollFlags="scroll|exitUntilCollapsed">
<include
layout="@layout/part_header"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:layout_collapseMode="parallax"/>
<android.support.v7.widget.Toolbar
android:id="@+id/activity_main_toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
app:layout_collapseMode="pin"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light"/>
</android.support.design.widget.CollapsingToolbarLayout>
</android.support.design.widget.AppBarLayout>
<android.support.v4.widget.NestedScrollView
android:id="@+id/activity_main_nestedscrollview"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fillViewport="true"
app:layout_behavior="@string/appbar_scrolling_view_behavior">
<android.support.v4.view.ViewPager
android:id="@+id/activity_main_viewpager"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#FFA0"/>
</android.support.v4.widget.NestedScrollView>
</android.support.design.widget.CoordinatorLayout>
ViewPager
внутрішнім а, NestedScrollView
як єдиним макетом - здавалося, добре працює. Я також зміг DrawerLayout
успішно впасти . Можливо, є ще один аспект вашого коду, який заважає потрібній вам функції. Хочете поділитися більшою частиною свого джерела?
ViewPager
. Я можу прокручувати види вгору і вниз, а також прокручувати ViewPager
вліво / вправо.
ViewPager
всерединіLinearLayout
? Просто цікаво, чи це призведеViewPager
належним чином.