位置: 编程技术 - 正文

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

编辑:rootadmin
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如何用安卓手机模拟)

  • 增值税减免税申报明细表举例
  • 国际货运代理企业应当遵循哪些原则
  • 税控盘当月不抵扣怎么申报
  • 社保费个人承担部分
  • 权益性支出与收益性支出区别
  • 汽车开公司发票可以抵税吗?
  • 处置可供出售金融资产取得的投资收益
  • 私人口腔诊所会感染艾滋病吗
  • 企业收不回款项计入什么科目?
  • 三栏式明细账适用于哪些账簿
  • 子公司算总公司员工吗
  • 季报每个月需要反写吗
  • 公司买卖股票如何账务处理
  • 税审需要什么资料和材料
  • 天猫企业支付宝怎么提现
  • 培训费用可以开专票吗
  • 混营纳税人有什么影响
  • 危险废物处理费用发票怎么开
  • 支票结算方式下用其他货币资金账户
  • 个人借款利息收入增值税税率
  • 开具红字发票退税准备什么资料?
  • 销售后换回产品的账务处理怎么做?
  • 新注册公司什么时候报个税
  • 季度财务报表怎么打印
  • 印花税的缴纳方式包括
  • 上个月转出的进项税,下个月申报
  • 增值税进项税额转出的情况有哪些
  • 公允价值变动损益在利润表哪里
  • 未生产期间的折旧费记到哪
  • 著作权出售后,属于自己的吗
  • php数字转换大写
  • 个体户流水过大怎么避税
  • 存出投资款要计入现金流吗
  • 如何在mac上快速打开聚焦搜索
  • 消费税组成计税价格公式推导
  • php 读取文本文件
  • PHP:pcntl_wait()的用法_PCNTL函数
  • wordpress恢复主题默认设置
  • 卖废品收入计入需要交税吗
  • python基本功
  • 税务文书送达回证企业要盖章吗
  • 宣传活动费用什么发票开?
  • vue中用echarts
  • ps笔刷在哪里调
  • 简易计税项目可抵扣吗
  • 金税盘一定要交费吗
  • ps怎么怎么用
  • 织梦系统
  • 收入成本怎么做账
  • 收入重复开票跨年了怎么处理
  • 建筑工程发票来自哪里
  • 以前年度损益影响当期损益吗
  • 机票报销属于什么科目
  • 企业所得税法允许按规定的比例在税前扣除的准备金
  • 多交税款退税款会计分录
  • 电商商品采购流程
  • 其他未列明信息技术服务业
  • 缴纳房产税如何做账务处理
  • 残料入库计入
  • 开出商业承兑汇票怎么做分录
  • 一般纳税人增值税申报操作流程
  • 发票开出来对方不走账会怎么样?
  • 租金是含税价还是含税金
  • 公司支付质保金怎么做账
  • sql server使用sql语句
  • SQLServer XML查询18句话入门教程
  • win8系统手机
  • win10预览版选哪个
  • fedora s7
  • windows xp 开机
  • pavfires.exe - pavfires是什么进程 有什么用
  • win7旗舰版如何升级到win10
  • middle html
  • 字符串转enum
  • angularjs内置了很多有用的服务
  • vue router使用query和params传参的使用和区别
  • nodejs 路由
  • 基于javascript的毕业设计选题
  • 租房减免税收
  • 上饶二手房契税
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设