安卓项目——微信页面设计
一、本项目完成的功能
- 做出类微信app的首页
- 顶部显示app应用标题
- 中间是一整块的空白主页面(后面的实验会添加内容)
- 底部是四个功能选择按钮,点击不同的按钮,按钮会变色,同时中间的内容页面会跟随按钮切换
二、项目的开发步骤
- 导入图片
1.1 把该项目中用到的ui图片复制粘贴到项目的文件夹MyweChat\app\src\main\res\drawable中。
- 设计ui布局
整体布局风格
2.1 top.xml
LinearLayout中添加一个TextView,设置尺寸,文本内容,字体颜色和背景颜色等
注意:
- gravity设为水平居中,外层LinearLayout的orientation设为垂直;其中weight设为1(百分比布局)height设为60dp;
2.2 bottom.xml
- 在已有的LinearLayout中增加一个LinearLayout,在该LinearLayout中放入ImageButton和TextView,设置最外层LinearLayout的高度,背景,配置TextView的字体颜色大小和居中,配置最顶层LinearLayout和ImageButton的背景颜色。
- 复制粘贴三个LinearLayout后,需要设置平铺,方法是宽度都设为0dp,weight都设为1,同时需要修改每个LinearLayout中ImageButton和TextView的id,同时增加每个LinearLayout的id(用于触发点击事件);
2.3 基本布局文件(activity_main.xml)
- 用include将top和bottom加入到该xml视图中(外层LinearLayout布局设为垂直)
- 添加FrameLayout,宽度设为0dp,weight设为1。
2.4 中间内容文件
-
新建四个Fragment文件,每一个Fragment文件都对应一个布局文件,weixinFragment、frdFragment、contactFragment、settingsFragment,这四个文件都基本上不需要自己敲代码
-
要实现点击bottom不同按钮用以切换中间内容,大体思路是为4个内容xml界面配置4个FrameLayout,再把它们压缩成一个FrameLayout,写到程序中,做一个子窗口。具体步骤是在main/java目录中新建一个FrameLayout,自带的xml删除,其中onCreateView函数中的xml改为刚刚自己创建的对应的布局文件的的名字。
2.5 主活动函数的java代码
-
每一个类相当于对应一个布局,这样我们就将四个布局所对应的xml文件就变成了四个类对象,从而可以正常的调用它。在MainActivity.java中控制操作逻辑首先要new出各个界面(Fragment)的对象,还有有一个FragmentManager管理所有的Fragment
-
逻辑控制思路
-
initFragment:代码中是固定语句,用于提交Fragment对象,
-
transaction.add(R.id.id_content,mTab01);中的transaction是起到通讯,就是添加这四个fragment到content中。
-
initView:用于给MainActivity中的控件对象赋值。
-
setSelect:此函数是来控制它的变换,指的是每次点击不同的按钮,显示不同的界面。
-
hideFragment:此函数就是根据setSelect函数,起到隐藏的功能(隐藏Fragment对象)
-
initEvent:点击监听函数,就是对于你每次的点击,方法会调用,执行对应流程。
3.预览结果
4.gitee地址
gitee仓库