移动开发作业一
作业目标
- 设计一个app的门户框架,需要实现3-4个tab切换效果;
- 在任一tab页中实现列表效果。
技术说明
1. Activity:
- 创建一个主 Activity,用于承载整个门户框架应用。
- 为每个选项卡页面准备一个对应的 Fragment。
2. Fragment:
- 创建 4 个不同的 Fragment 类,每个 Fragment 代表一个不同的选项卡页面。
- 在每个 Fragment 类中,定义要显示的内容和布局,例如 RecyclerView 列表。
- 在 Fragment 中处理与该选项卡相关的数据和功能,如加载数据、处理点击事件等。
3. XML 布局:
- 为每个 Fragment 创建对应的 XML 布局文件,用于定义该选项卡页面的界面元素。
- 在某一个 XML 布局中使用 RecyclerView 控件,用于显示列表效果。
4. RecyclerView:
- 在每个 Fragment 中,使用 RecyclerView 控件来显示列表数据。
- 创建一个适配器类,用于将数据与 RecyclerView 绑定。适配器类应根据每个选项卡的数据需求自定义,包括数据源、视图绑定和点击事件处理。
- 使用布局管理器(例如 LinearLayoutManager)来定义列表项的排列方式,可以是垂直或水平。
关键代码解析
该布局文件定义了一个简单的消息项,包括消息发送者的名称 (senderTextView
)、消息内容 (contentTextView
) 和时间戳 (timestampTextView
)。每个消息项都会垂直排列,并且文本样式和颜色会根据上述设置显示。
该适配器充当RecyclerView
和消息数据之间的桥梁,负责加载布局、填充数据,并将数据正确显示在屏幕上。
LayoutInflater.from(parent.getContext()).inflate(R.layout.item_message, parent, false)
,从布局文件item_message.xml
创建一个新的视图,并返回一个 ViewHolder。
View
对象view
用于加载片段的布局,通过inflater.inflate
方法将布局文件R.layout.wetalks
填充到片段中。这个布局包含一个RecyclerView
控件。
创建一个MessageAdapter
对象messageAdapter
,并将消息数据messages
传递给它,这样可以将消息数据与RecyclerView
绑定。
这段代码是一个点击事件处理方法,在用户点击不同的视图元素时执行不同的操作。
由于Gradle
的版本问题,不能使用switch-case
语句,注意隐藏其他片段,以确保只显示一个特定的片段。
GitHub仓库地址
https://github.com/k13in/WeTalks