我在 github 上查看 Slidenerd 的示例代码,我正在尝试修改它以满足我的需要:
https://github.com/slidenerd/Android-Design-Support-Library-Demo
现在这是他原来的布局,只是我把他的 tabLayout 拿出来,插入了一个 textView:
xml中布局的代码如下:
<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="slidenerd.vivz.navigationviewdemo.FourthActivity">
<android.support.design.widget.CoordinatorLayout
android:id="@+id/root_coordinator"
android:layout_width="match_parent"
android:layout_height="match_parent">
<android.support.design.widget.AppBarLayout
android:id="@+id/app_bar_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<android.support.design.widget.CollapsingToolbarLayout
android:id="@+id/collapsing_toolbar_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:contentScrim="?attr/colorPrimary"
app:layout_scrollFlags="scroll|exitUntilCollapsed">
<ImageView
android:layout_width="match_parent"
android:layout_height="192dp"
android:scaleType="centerCrop"
android:src="@drawable/rsz_bg_cover"
app:layout_collapseMode="parallax" />
<android.support.v7.widget.Toolbar
android:id="@+id/app_bar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
app:layout_collapseMode="pin" />
</android.support.design.widget.CollapsingToolbarLayout>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:layout_scrollFlags="scroll|enterAlways"
android:text="Information"
android:textColor="#fff"
android:background="#000"
android:gravity="center"
android:padding="16dp"/>
</android.support.design.widget.AppBarLayout>
<android.support.v4.view.ViewPager
android:id="@+id/view_pager"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_behavior="@string/appbar_scrolling_view_behavior" />
<android.support.design.widget.FloatingActionButton
android:id="@+id/fab"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom|right"
android:layout_margin="16dp"
android:src="@drawable/ic_add_black"
app:borderWidth="0dp"
app:fabSize="mini" />
</android.support.design.widget.CoordinatorLayout>
<android.support.design.widget.NavigationView
android:id="@+id/navigation_drawer"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_gravity="start"
app:menu="@menu/menu_drawer" />
</android.support.v4.widget.DrawerLayout>
现在,当我滚动回收视图时,我希望工具栏固定在屏幕顶部(并且我希望我的 textView(带有白色“信息”文本的黑色矩形滚动出视图,这就是我给出这些标志的原因对这些元素:
工具栏:app:layout_scrollFlags="scroll|exitUntilCollapsed"
文本视图:app:layout_scrollFlags="scroll|enterAlways"
但是,当我滚动时,工具栏会正确固定自己,但 TextView 会将自己固定在工具栏下方。
如何让它在工具栏下方滚动?
我确实意识到可以将 TextView 作为对象放入 recyclerview 适配器并在工具栏下方滚动它会自然发生,因为我只是滚动 recyclerview。
我不想走那条路,因为我不断添加/删除值/对 recyclerview 进行排序,我不想有一个空对象,这样我就可以在 recyclerview 的顶部获取 textView,因为这会增加风险空指针异常。