Android开发——RecycleView设计及activity生命周期及界面跳转
RecycleView设计
概念
RecycleView是Android5.0推出的,它用来代替ListView和GridView,并且能够实现瀑布流中的布局,更加高级并且更加灵活,提供更为高效的回收复用机制,同时实现管理和视图的解耦合。
项目功能简介
- 完成联系人界面的目录展示,并且实现吸顶布局效果展现
具体步骤及关键代码
- 联系人界面包括头像和联系人昵称两项数据,因此设计一个WeChatContactsItem类,其中sticky表示该item数据所属的组。
public class WeChatContactsItem {
public String sticky;
public ImageView imageView;
public String dataWechatContactsName;
}
- 联系人界面的item布局需为水平方向上的LinearLayout,左边放imageview,右边放textview,同时在item上方应有include语句,引入吸顶布局item。
<include layout="@layout/layout_sticky_header_view" />
<LinearLayout
android:id="@+id/LinearLayoutWechatContactsItem"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="5sp"
android:layout_weight="1"
android:background="#F40"
android:gravity="center"
android:orientation="horizontal"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent">
<ImageView
android:id="@+id/wechat_contacts_name_image"
android:layout_width="wrap_content"
android:layout_height="60sp"
android:layout_weight="1"
tools:srcCompat="@tools:sample/avatars" />
<TextView
android:id="@+id/wechat_contacts_name"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1"
android:gravity="center_vertical"
android:text="微信联系人名字"
android:textSize="16sp" />
</LinearLayout>
- 吸顶文本用来实现吸顶布局的显示
<TextView
android:id="@+id/tv_sticky_header_view"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/design_default_color_primary"
android:gravity="center"
android:padding="10dp"
android:text="吸顶文本"
android:textColor="@android:color/white"
android:textSize="14sp" />
- 通过contacts主函数进行数据的上传,同时修改adapter继承RecycleView.Adapter,来完成item的初始化。
for(int i=0;i<10;i++){
WeChatContactsItem weChatContactsItem = new WeChatContactsItem();
weChatContactsItem.sticky = "这是0-10的顶部";
weChatContactsItem.dataWechatContactsName = "这是第"+i+"个微信联系人名字";
da

本文介绍了如何在Android应用中使用RecycleView实现吸顶布局,展示了数据加载、item设计与吸顶逻辑,同时深入解析了Activity的生命周期管理和界面跳转的实现。

5396

被折叠的 条评论
为什么被折叠?



