欢迎光临散文网 会员登陆 & 注册

Android Jetpack笔记5

2022-10-28 22:12 作者:SKUNK1212  | 我要投稿

    本节将会对之前的代码从项目需求的角度进行细化和拆分,实现完整的功能,项目代码结构做到规范清晰。

首先,根据第一阶段需求设计若干页面:

  • 初始页

  • 登录页

  • 注册页

  • APP引导页

  • 主页

  • 个人中心页

  • 港口能耗页

  • 设备管理页

  • 告警管理页

  1. 主页设计,功能主要为切换4个子页面。

(1)底部横栏

思想:Bar-->通过参数selected获取按钮编号,将此按钮变色,onSelectChanged作为监听器,在函数里调用监听特定页面

之前章节已基本实现,将其抽出作为一个函数ButtomBar


ButtomBar函数

基于MVVM架构,将状态变量抽出到ViewModel

HomeViewModel继承ViewModel
引入这个使用ViewModel函数

注意,在UI函数中需要使用remember包裹状态变量

调用VM类的indexState
效果

(2)页面滑动(ViewPager)

使用accompanist库的Pager函数实现

引入accompanist
accompanist还在试验阶段,需加上此注解

如前面实现的滑动,将4个页面抽出

简写4个页面

写4个类似涂满颜色的示例页面

Home类写上布局

总体纵向布局,Page+ButtomBar

最后,解决之前遗留的一个小问题,实现Page填满除底部的效果。

这里使用fillMaxWidth()函数铺满横向,用weight填满除底部外的纵向。

运行查看效果:

页面1
页面2
当前项目结构

今天收工,明天实现登陆注册和个人主页。

Android Jetpack笔记5的评论 (共 条)

分享到微博请遵守国家法律