安卓项目----微信简单界面(1)

一.开发所需软件:Android studio

二.功能说明
在安卓studio中建立一个新的项目后,我们可以看到在项目中存在两个不一样的未经修改的原文件 activity_main.xml 和 MainActivity。
1.
(1)点开res下的layout鼠标右键,接着new一个新的XML选择layout xml file建立新的XML文件,这里总共要建立7个XML文件。
首先,在截图5中可以看到top.xml文件,它主要是设置我们看到在截图一中上方有MyWechat这个黑色框中,对Linearlayout和TextView修改从而改变视觉效果。

(2)第二个就是本次设计最重要的部分,我们可以看到在图一的图片下方有四个tab,微信、朋友、通讯录、设置。bottom.xml文件,这里面的配置比较复杂,注意的点比较多,尤其在xml文件的design这个界面的orientation设置,以及注意weight、height、width的设置(在这里强调xml界面,可以code和design切换看自己的设置是否出错),具体的代码设置在我的gitee里可以看。

(3)继续根据bottom.xml文件进行设置,可以看到图五的layout下有tab01、tab02、tab03、tab04,这四个文件,就是在bottom.xml文件的linearlayout下进行参数的修改,以及它们自身的参数修改。我们可以看到在图一到图四白色界面中都有一句话,就需要在tab.xml文件自身配置修改。

(4)最后一个就是activity_main.xml文件,需要在它的linearlayout下增添一个f’ramelayout,这里f’ramelayout是一个简单的布局,用来显示每次我选择一个就会是一个新的界面和新的内容。

(1)

除了MainActivity之外,每一个Fragment文件都对应一个tab
weixinFragment、frdFragment、contactFragment、settingsFragment,这四个文件都基本上不需要自己敲代码,直接new一个后里面就存在一些函数、参数(鼠标右键点击com.example.mywechat后new一个Fragment文件,记住是blank)参数里修改是如图:

找对应的tab进行修改。

(2)
这里最重要的就是MainActivity文件的代码编写,是本次项目代码的核心
我们之前建立了7个xml文件,如何将这7个xml运行起来,将这个完整的界面展示出来?如何让这四个tab有顺序有效的执行,都需要主代码来控制。
具体的函数用法和分析我在第三部分解释。

三.分析
要有逻辑控制思路
(1)我们看代码可以知道,LinearLayout、ImageButton、Fragment三个私有的类型以及后面所带的变量名都是私有,接着又声明了五个私有函数(当然在编写代码的时候是不可能直接就知道我要什么变量或者什么函数,函数的类型又是怎样,以及参数的配置都是不可能在编写前知道的,而是从开始写慢慢发现自己需要什么函数、需要什么参数、类型如何等等,在这里我直接我直接解释函数作用吧)

initFragment:代码中是固定语句,
transaction.add(R.id.id_content,mTab01);中的transaction是起到通讯,就是添加这四个fragment到content中。

initView:我们自己定义的一个函数,包含了我们之前定义的每个linearlayout,找到所有响应的控件。

setSelect:此函数是来控制它的变换,指的是每次点击不同的按钮,显示不同的界面。用switch case语句,i的值不同,就是不同的tab,在图中画红框的地方是这次函数的核心,第一个是fragment再一个的控制,红框的下方有个hideFragment也是自己写的函数,用来隐藏图标,就是你不点击的时候,不变色。第二个红框是显示函数,显示tab。

hideFragment:此函数就是根据setSelect函数,起到隐藏的功能(图标隐藏)

initEvent:点击监听函数,就是对于你每次的点击,函数会调用,产生相应的反应。

(2)

新的函数是getId,就表示我能获得控件的Id,视图对象调用Id。我们可以看我们调用的具体是哪个Id。

四.运行界面展示
1.

2.

3.

4.

5.

5.源码的代码仓库地址
gitee

安卓开发项目(微信简单界面)相关推荐

  1. android仿微信点击好友,安卓开发仿微信联系人列表-机器人列表视图仿微通道聊天多久最底部滑动...

    楼主你好!根据你的描述,让我给你答案! :新内容加进来,列表视图重新为setSelection后,定位结束后,拉起一个页面放. . 希望你能有所帮助,如果满意,请记得采纳像下拉条为微信好友如何实现 简 ...

  2. Android Studio安卓开发-类微信UI设计

    新建一个安卓空项目,语言采用Java,基于Android SDK11.0实现,使用虚拟设备Pixel 5 API 30. 实现顶部微信栏-layout_top.xml. 创建时选择LinearLayo ...

  3. vue开发项目微信公众号授权支付开发

    一.注册微信公众号服务号并填写企业信息(个人订阅号没有开发微信支付的权限) 链接: https://mp.weixin.qq.com/ 二.在微信公众号内进行微信认证(3-5个工作日) 三.在微信公众 ...

  4. Android安卓开发集成微信第三方扫描二维码登录-超级无敌具详细

    Android安卓开发中集成微信二维码登录的步骤: 写在前面的: 该教程使用AS作为演示,使用ecplise请参照微信官方文档下载相应jar等所需参考文档和资源.在最后,我会附上这个Activity的 ...

  5. Android入门小项目--微信登录界面源码(倒计时、fragement切换、activity信息传递)

    微信登录的完全源码,复制粘贴即可使用 作为Android学习的入门,一次性搞定Android的布局,让你的view层畅通无阻 手机界面 插入数据线,将手机调入开发者模式的usb调试,即可进行手机调试安 ...

  6. 安卓开发— —仿微信界面(一)

    目录 一.项目内容 二.代码实现 1.项目结构 2.头部代码 3.底部代码 4.四个内容界面 5.窗体总布局 6.MainActivity实现点击图标与页面的互动 三.运行效果 四.总结 一.项目内容 ...

  7. 安卓开发— —仿微信界面(二)

    一.项目内容 对聊天主界面weixinFragment进行完善,使用recyclerView实现滚动列表,并实现点击联系人展开显示详细聊天信息. 开发环境:Android Studio.Android ...

  8. 安卓开发制作微信界面

    一,结果展示 二,在activity--main中编写底部界面 三,编写顶部界面 四,编写四个内容区 五,编写MainActivity以及activity_main.xml 六,上传的仓库地址 一,结 ...

  9. 安卓开发_自定义控件_界面的简单侧滑

    主界面 package com.itheima.news;import android.os.Bundle; import android.app.Activity; import android.v ...

最新文章

  1. 查看.Net程序的框架版本的方法
  2. pch在c语言中占内存字节数,c语言期末测试题(附答案)
  3. Spring Boot(3) Web开发(1)静态资源处理
  4. Smartisan OS ROM 小米手机 2/2S 标准版 刷机教程
  5. hashtable资料
  6. 【JavaScript基础笔记】数据类型转换、false值、内存图、垃圾回收和深浅拷贝简易概念...
  7. linux总线驱动程序,Linux驱动程序中的platform总线详解
  8. dBeaver sql格式化配置-v1.5
  9. 通达OAV12报表中心
  10. HTTP协议详解你确定不看吗
  11. adb命令 android 串口_Android adb 串口设备调试方法
  12. matlab实现LSB图像水印的嵌入与提取
  13. 山大郝老师 计算机学院,相约山大 一起扬帆远航
  14. 神经网络的基本结构介绍
  15. Android NDK 中堆栈日志 add2line 的分析实践
  16. python依据出生日期判断星座(少量代码)
  17. CNC+CRC/SoftPLC/OpenCASCADE/CAD/CAM开源项目收藏
  18. jsp+tomcat+mysql+sevlet+javabean配置过程
  19. php分页教程,php实现分页的原理及步骤
  20. vector里面的assign函数

热门文章

  1. tp3.1 mysql 事务_tp框架事务处理实例和理解
  2. python 30个基础操作
  3. 【看完这篇就够了!!!通俗易懂】置信度理解(95%的置信度、置信区间)
  4. 计算机基础作业批改记录,华师计算机基础作业批改后.doc
  5. 【重要】kubernetes二进制部署单master节点
  6. ckeditor使用教程 php,为ckeditor编辑器修改添加一键排版功能
  7. python3实现微信公众号文章爬取
  8. 静默安装11.2.0.1数据库软件报[FATAL] [INS-32035] Unable to create
  9. webview.addJavascriptInterface() doen not work on API 16+
  10. 我用 iPad Pro 开发了一款 App