系统目录
- 一、项目背景
- 二、需求分析
- 三、开发环境
- 四、详细设计
-
- 1、主界面
- 2、 预定座位
- 3、 查看座位
- 4、个人信息
- 5、我的步数
- 6、数据库
- 五、运行演示
- 六、项目总结
- 七、源码获取
一、项目背景
在校园生活中,图书馆是很多人选择的学习圣地,这里不仅充满书香气息,而且还十分静谧。这样的学习环境,必然会很抢手,导致很多学生早早就来图书馆占座,渐渐地因为一直占不到座的同学就失去了学习的动力。
二、需求分析
订座系统满足以下所有的要求:
- 项目主题中要体现解决现实中的某种实际问题
- 项目app不能是单机版
- UI设计要求简单美观、实用性强
- 项目至少包含4个功能模块,功能模块必须与题目相关
- 使用技术的要求:
a. 络通信(socket或http) | b.数据库 | c.传感器 | d.多线程 |
---|
三、开发环境
打开Android Studio,Help——>About,只要你的AS是从官 下载的都可以运行。比如小蜜蜂版本就是2021.1.1,这种日期形式的都完全OK。
这里实现轮播图的主函数initPager(),声明了图片和小点列表并初始化。对于绑定的ImageView,我们依次设置图片数组中的图片,设置它的ScaleType为FIT_XY,进行平铺图片。接着设置图片view的宽高,然后将这张图片放入ivList,小圆点也是同样的方式, pointLayout.addView(piv);将小圆点添加到布局当中。这样的数据源就添加好了,实例化个适配器,然后ViewPager加载适配器即可。和列表显示的原理很像。
2、 预定座位
在座位表设置这里,我构思了很长时间,到底使用什么控件来表示座位最好extView、Button还是RadioButton,思来想去最好决定还是RadioButton。那么问题又来了,RadioGroup是继承LinearLayout布局的,只能水平和垂直,所以导致了每一行都能选择一个单选按钮,这样就和每位学生选一个座位矛盾了,如何解决/p>
根据之前在力扣刷题的经验,这里我们需要对每一行控件进行设置,当选中其中某一行的单选按钮时,取消其他行的状态,这样实现虽然很繁琐,但是很有效,主要是由于RadioGroup底层是LinearLayout,其中包含的RadioButton要么全水平要么全垂直,不能自定义排列方式。
单选按钮的监听器逻辑,梦回当年的力扣刷题。
3、 查看座位
这里可以看到你的座位信息,如果没有订座则默认显示“暂无信息”。
定义两个方法,进行模式切换,就是利用enable这个属性。
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!