浪漫官途,昆明特警遭伏击全牺牲,洞朗地区
首先来个效果图
布局文件代码
在布局文件中,coordinatorlayout作为布局文件根节点,appbarlayout包含在coordinatorlayout中,toolbar在appbarlayout节点下include进来。
<?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" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="cn.manchester.androidsupportlibrary.coordinatorlayoutactivity"> <android.support.design.widget.appbarlayout android:id="@+id/appbar" android:layout_width="match_parent" android:layout_height="wrap_content" android:fitssystemwindows="true"> <include layout="@layout/toolbar" /> </android.support.design.widget.appbarlayout> <linearlayout android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" android:scrollbars="none" app:layout_behavior="@string/appbar_scrolling_view_behavior"> <android.support.v7.widget.recyclerview android:id="@+id/recyclerview" android:layout_width="match_parent" android:layout_height="match_parent" /> </linearlayout> </android.support.design.widget.coordinatorlayout>
toolbar.xml
toolbar是需要响应view的滚动事件的,所以需要为toolbar指定layout_scrollflags属性,scroll表示toobar会随着view的向下滚动而隐藏,enteralways表示toolbar会随着view的向上滚动而恢复到原来的位置。
<?xml version="1.0" encoding="utf-8"?> <android.support.v7.widget.toolbar xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="wrap_content" android:background="#304696" android:popuptheme="@style/themeoverlay.appcompat.light" app:layout_scrollflags="scroll|enteralways" app:theme="@style/themeoverlay.appcompat.actionbar"> </android.support.v7.widget.toolbar>
java代码
public class coordinatorlayoutactivity extends appcompatactivity { toolbar mtoolbar; recyclerview mrecyclerview; string[] marrays = new string[]{"1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14"}; @override protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.activity_coordinator_layout); mtoolbar = (toolbar) findviewbyid(r.id.toolbar); setsupportactionbar(mtoolbar); getsupportactionbar().setdisplayhomeasupenabled(true); mrecyclerview = (recyclerview) findviewbyid(r.id.recyclerview); mrecyclerview.setlayoutmanager(new linearlayoutmanager(this)); mrecyclerview.setadapter(new myadapter()); } class myadapter extends recyclerview.adapter<myadapter.myviewholder> { @override public myadapter.myviewholder oncreateviewholder(viewgroup parent, int viewtype) { myviewholder holder = new myviewholder(layoutinflater.from(coordinatorlayoutactivity.this) .inflate(android.r.layout.simple_list_item_1, parent, false)); return holder; } @override public void onbindviewholder(myadapter.myviewholder holder, int position) { holder.tv.settext(marrays[position]); } @override public int getitemcount() { return marrays.length; } class myviewholder extends recyclerview.viewholder { textview tv; public myviewholder(view itemview) { super(itemview); tv = (textview) itemview.findviewbyid(android.r.id.text1); } } } }
以上这篇android support library 标题栏(toolbar)滚动效果实现方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持移动技术网。
如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复
Android Manifest中meta-data扩展元素数据的配置与获取方式
Android实现获取meta-data和build.gradle的值
Android获取清单文件中的meta-data,解决碰到数值为null的问题
解决webview 第二次调用loadUrl页面不刷新的问题
解决Android WebView拦截url,视频播放加载失败的问题
Android webview加载https链接错误或无响应的解决
网友评论