Ich muss eine Oberfläche wie Google Newsstand erstellen, die eine Art ViewPager (horizontaler Bildlauf) über einem reduzierenden Header (vertikaler Bildlauf) ist. Eine meiner Anforderungen ist die Verwendung der neuen Design Support Library, die auf der Google IO 2015 vorgestellt wird. ( Http://android-developers.blogspot.ca/2015/05/android-design-support-library.html )
Basierend auf dem von Chris Banes erstellten Beispiel ( https://github.com/chrisbanes/cheesesquare ) habe ich den Punkt erreicht, an dem ich das Reduktionsverhalten ausführen kann, jedoch mit einem einfachen LinearLayout (ohne horizontalen Bildlauf).
Ich habe versucht, das LinearLayout durch einen ViewPager zu ersetzen, und habe einen leeren Bildschirm erhalten. Ich habe gespielt mit: Breite, Gewicht und allen Arten von Ansichtsgruppen, aber ... immer noch ein leerer Bildschirm. Es scheint, dass ViewPager und NestedScrollView sich nicht mögen.
Ich habe versucht, eine Problemumgehung mithilfe eines HorizontalScrollView zu verwenden: Es funktioniert, aber ich verliere den Vorteil der PagerTitleStrip-Funktion und den Fokus auf ein einzelnes Bedienfeld (ich kann das horizontale zwischen zwei Bedienfeldern stoppen).
Jetzt habe ich keine Ideen mehr, ob mich jemand zu einer Lösung führen kann ...
Vielen Dank
Hier ist meine neueste Layoutdatei:
<?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
Inside-A NestedScrollView
als einzigem Layout erstellt - schien gut zu funktionieren. Ich konnte auch DrawerLayout
erfolgreich in eine fallen . Vielleicht gibt es einen anderen Aspekt Ihres Codes, der die gewünschte Funktionalität verhindert. Möchten Sie mehr von Ihrer Quelle teilen?
ViewPager
. Ich kann die Ansichten nach oben und unten sowie nach ViewPager
links / rechts scrollen .
ViewPager
in ein zu wickelnLinearLayout
? Nur neugierig, ob das dasViewPager
richtig machen würde .