ListView中停靠(悬浮)效果
来源:互联网 发布:万人网络聊天直播吸毒 编辑:程序博客网 时间:2024/05/16 09:13
总得来说就是要停靠的部分,等到它滑动到页面最上方的时候,原本隐藏的控件(和你要停靠的一样效果的控件)显示在页面顶部,以前做这个都没有实现很自然的停靠效果,现在终于找到原因了,listview的滑动监听如下:
listView.setOnScrollListener(new AbsListView.OnScrollListener() { public void onScrollStateChanged(AbsListView view, int scrollState) { //监听滑动状态改变 } @Override public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) { //滑动过程中的监听 }});
以前写的就是在onScrollStateChanged()里面去监听的,这样只有手指滑动停止的时候才会出现变化,效果很明显,用户体验不好,应该在onScroll()里面去监听,这样滑动过程中就会变化,很自然的效果。
停靠的实现:
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".MainActivity" > <ListView android:id="@+id/listview" android:layout_width="fill_parent" android:layout_height="fill_parent"/> <TextView android:id="@+id/title" android:layout_width="match_parent" android:layout_height="50dp" android:gravity="center_vertical" android:background="#ffffff" android:text="Activity" android:visibility="gone"/></FrameLayout>
listView.setOnScrollListener(new AbsListView.OnScrollListener() { public void onScrollStateChanged(AbsListView view, int scrollState) { } @Override public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) { if (firstVisibleItem >= 1) { title.setVisibility(View.VISIBLE); } else { title.setVisibility(View.GONE); } }});总的一句话:去控制不同时间停靠(title)的显示和隐藏。
总结:
1.做这个效果一定要在onScroll()方法里面做
2.我突然发现,原来ListView居然可以添加多个header
lv = (ListView) findViewById(R.id.lv);lv.addHeaderView(View.inflate(this, R.layout.header_1, null));//添加头部---内容部分lv.addHeaderView(View.inflate(this, R.layout.header_2, null));/添加到头部--ListView条目中的悬浮部分效果图:
停靠效果图:(借用别人的gif图)
0 0
- ListView中停靠(悬浮)效果
- Android 中ListView悬浮头部效果设置
- 悬浮停靠
- ListView顶部悬浮效果
- android ListView滑动首字母顶部停靠效果
- android ListView滑动首字母顶部停靠效果
- Android ListView头部悬浮效果
- ListView悬浮头部展示效果
- Android 简单实现ListView顶部悬浮效果
- Android 简单实现ListView顶部悬浮效果
- 简单实现ListView顶部悬浮效果
- Android Listview 滑动时置顶悬浮效果
- Android 简单实现ListView顶部悬浮效果
- Android 简单实现ListView顶部悬浮效果
- Android 简单实现ListView顶部悬浮效果
- Android 简单实现ListView顶部悬浮效果
- Android 简单实现ListView顶部悬浮效果
- ReactNative实现ListView分组,悬浮效果
- 【黑马程序员】第七章:集合
- iOS 代码规范实践总结
- day07 homework
- HDU 1268 积木堆砌的城堡(贪心)
- iOS与内存管理
- ListView中停靠(悬浮)效果
- MVP模式在Android开发中的应用
- Linux笔记(基于CentOS)
- NOIP2014 Day2T1 无线网络发射器选址
- SQL HAVING 子句
- Xcode7 UI自动化测试详解 带demo UITests
- gdb调试程序
- 第三十九篇:常用图像数据库
- JavaScript-什么是内置对象及string字符串对象