位置: 编程技术 - 正文

androidの浅谈布局优化(你知道什么是布)

发布时间:2024-02-27
androidの浅谈布局优化如何布好一个局?1.熟读API文档

推荐整理分享androidの浅谈布局优化(你知道什么是布),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:布的概念,布shu,布???,什么是布,你知道什么是布,你知道什么是布,什么是布,布???,内容如对您有帮助,希望把文章链接给更多的朋友!

布局这东西不是比酷的东西,不是比谁的布局越复杂,那个人就越牛叉,以最少的步骤完成,设计图的要求,这应该是每个android开发程序员的宗旨!!

案例一:做一个带箭头的返回按钮

如下代码

用hierarchyviewer来分析一下,这个按钮有什么问题!

我们从这个图中,我们可以看到,为了这么一个按钮我们用了view的三个节点去完成!

技巧一:熟读官方的API文档!个人建议,常用的Widget的所有参数都尽量了解一遍!在阅读官方文档的时候我们发现了Button,有一个可以把图绘制在左边的参数:android:drawableLeft

于是,我们优化了一下小与的代码

用hierarchyviewer来分析一下

瞬间一个3N级复杂度的布局,变成了一个N级复杂的!所以,我建议各位android开发朋友,在考虑优化的时候先把api文档里面的内容烂熟与心,不然,这样折腾下去,很浪费时间!

有细心的朋友可能会问:android:padding="dp"

不用这个参数:你将会看到:

用了以后:

这下大家能够明白了吧?

所以,当你在进行布局的时候,如果碰到比较繁琐的时候,你先想想会不会已经API本身就有这样的参数呢?

简单是所有布局开始最重要的原则!

简单意味着不容易出现兼容问题!

简单意味着性能不错!

2.模块化布局

androidの浅谈布局优化(你知道什么是布)

所谓,模块化布局就是要你熟悉使用<include /> 这个标签!

一个经典的Tab类布局由三部分组成,我们可以根据这三部分创建三个可以重用的布局

head_menu.xml

content_showweibo.xml

bottom_menu.xml

然后我们可以很灵活的组合我们要显示的,例如要完成上面的那个weibo布局

熟练的使用<include />标签就可以大大的减少我们日后都维护工作!

3. 合并没必要的节点

还记得我们一开始的那个项目吗?

在高效布局里面,有一条准则就是,尽量的减少节点!!!!如图,我们发现,其实LinearLayout其实啥都没干,我们却耗费了那么一点性能去绘制了这么没用的节点!

接下来,我们为了消灭这个节点,我们需要一个这么的标签

<merge ></merge>

修改咱们的代码让它,性能更好!

打开hierarchyviewer 一看!

哦也!优化了一个节点!并且显示快了那么一点点...

总结

貌&#;,没怎么如何去优化?都是在说一些操作性的东西,其实,这世上没有绝对的优化方案,所谓的优化方案都是基于一个最初的基本原则出发,例如,内存用得再少一点!那么如何才能将这内存用得再少一点做的了,这样就需要一些最基本的方法,关于布局这部分的基本方法,我在上面已经很详细的说了一遍了,当进行布局的时候你要牢记

1,尽量使用view自身的参数

2,减少一个布局的不必要节点

3,尽量重用一个布局文件

兼容问题呢?兼容问题出现的原因千奇百怪,没有一套通用的法则!关于这点谈一下自己的看法

1,减少复杂度,往往,兼容问题的出现,就是布局太复杂了,例如,我举的那个按钮布局,本来一个View就能完成,你却用了三个view完成,在使用的时候,出现问题的概念也大幅度提升!所以,布局以简单为本,那样兼容问题就可以尽量避免!

2,熟练使用工具,还记得hierarchyviewer 吗?当出现兼容问题的时候,用这个软件可以快速定位到错误位置!

UI设计之--仿微信聊天界面 1.首先编写main.xml文件:?xmlversion=1.0encoding=utf-8?LinearLayoutxmlns:android=

如何向android模拟器的sd卡拷贝文件 这篇文章想要分享的是向android模拟器(emulator)的sd卡拷贝文件,不同平台有不同的方法:1、linux平台:在linux下面我们可以将sdcardmount成一个loop设备。

Android 模拟器和键盘的按键对应关系 按键按钮模拟器对应键homeHomekeyHome键ESCBack键F2MenuKey菜单键F3CallKey拨号键F4EndCallKey结束通话即红键上下左右方向键Enter确定键

标签: 你知道什么是布

本文链接地址:https://www.jiuchutong.com/biancheng/383256.html 转载请保留说明!

上一篇:android studio i使用

下一篇:如何向android模拟器的sd卡拷贝文件(android studio如何用安卓手机模拟)

  • 税后债务资本成本计算公式 中级会计
  • 已暂估入库原材料,确认收不到发票怎么调账
  • 社保公积金计提是本月计提下月
  • 坏账准备的账务处理4步
  • 收到股权回购款是什么意思
  • 联营企业股利收入
  • 统借统还资金管理办法
  • 职工福利企业所得税
  • 应收账款属于非流动资产吗
  • 没有及时取得发票可以入成本么
  • 协会会费支出计什么科目
  • 小规模租赁税是怎么征收的
  • 建筑业营改增账务处理怎么做?
  • 技术转让免征增值税
  • 应收账款核销会计处理
  • 粮食购销企业
  • 接受应税劳务的会计分录怎么写
  • 商用房的增值税是多少
  • 资金拆借利息收入是什么意思
  • 压缩文件夹发给别人他能看到我桌面上的文件吗
  • 如何增强无线网卡的接收能力
  • win11最低硬件要求几代
  • 购买交易性金融资产时,支付的交易费用应计入
  • thinkphp5控制器
  • 获取当前位置被拒怎么办
  • echarts饼图背景图片
  • php 强类型
  • 资本化计入
  • php7异常处理
  • uniapp动态设置标题
  • bert multihead
  • 老生常谈含义
  • vue和react区别大吗
  • matlab进行图像处理
  • pytorch jit
  • 前端都有哪些
  • php多进程处理大数据
  • 预付一年的房租并收到了发票会计分录
  • 如何一次性删除微信账单记录
  • python tkinter详解
  • 未分配利润为负数严重吗
  • 支付个人赔偿款要交税吗
  • 福利部门领用材料计入什么科目
  • 印花税是按照开票金额还是当月收入
  • 现金流量表中的现金流量包括哪些
  • sql2000日志清理
  • sqlserver实现分页查询
  • 小规模可以不用软件做账吗
  • 职工福利费如何入账
  • 库存现金日记账怎么填
  • 银行账户收到养老金怎么办
  • 公司从员工工资扣水电费
  • 应收账款如何做平
  • 销售费用进项税抵扣
  • 银行记账本怎么填写
  • sql去除指定数据
  • windows7安装后正常使用的安装方法
  • 系统停止工作
  • 如何设置window图标大小
  • 进程net1
  • ubuntu怎么root权限
  • ubuntu-server
  • linux gunzip
  • webcamrt.exe - webcamrt 进程是什么意思
  • win11怎么关闭系统防火墙
  • 备份ubuntu系统
  • ghost操作指南
  • win7系统搜索功能没了
  • win7怎么禁止程序自启动
  • javascript解析器
  • apache部署项目
  • python标准库os中的方法
  • js秒数转时间
  • jquery绑定keyup
  • linux find -cmin
  • 三角进攻怎么打
  • 何艳娟出生年月
  • 纳税人不办税务许可证
  • 如何在河南省社会保障网上平台进行社保基数申报
  • 中华人民共和国刑法
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号