Android中的<include>标签和<merge>标签
android开发中经常会碰到某一个布局的复用;直接拷贝粘贴并不是是有效的策略,这时候就能够借助<include>标签和<merge>标签来完毕。
官方文档:
http://developer.android.com/training/improving-layouts/reusing-layouts.html
1. <include>的使用方法
把要复用的Layout给提取出来,经常使用的比方TopBar。包括左側的返回键;中间的标题;右側的图片。能够把这个布局单独写出来。然后仅仅须要在使用的layout中include就能够了。
详细的使用方法样例见上面的官方文档。
一个值得注意的问题,假设一个布局在同一文件里被<include>多次的话,我们怎样引用到这个被<include>布局中的子view呢?解决方法例如以下:
http://stackoverflow.com/questions/1759099/how-to-specify-id-when-uses-include-in-layout-xml-file
<include layout="@layout/test" android:id="@+id/test1" />
View test1View = findViewById(R.id.test1);
TextView test1TextView = (TextView) test1View.findViewById(R.id.text);
这样就能够区分出子view了。
2. <merge>的使用方法
简单来说,<merge>必须配合<include>来使用。比方我有两个button,放在一行中。然后会复用非常多次。
这时候把两个button提取出来写一个单独的layout。这个单独的layout最外层可能用的是<LinearLayou>包裹,然后被include之后,又include在一个<LinearLayout>里面,
这时候里面的那个LinearLayout事实上已经没什么用处了,并且会减少程序性能;这时候我们能够用<merge>标签来包裹那两个button,这时候被include之后,两个button会
直接被当成外层LinearLayout的子view进行布局安排。就省了一层。提高性能。
Android中的<include>标签和<merge>标签的更多相关文章
- Android中的路径记录
Android中的路径记录 | RobinBlog 导航 导航 博客 分类 标签 友链 关于 搜索 Environment.getDataDirectory().getPath()=/dataEnvi ...
- Android中View绘制优化二一---- 使用<include />标签复用布局文件
本文原创, 转载请注明出处:http://blog.csdn.net/qinjuning 译二: 使用<include />标签复用布局文件 翻译地址:http://de ...
- android中include标签使用详解
android中include标签是为了便于控件的覆用的一个很好解决方案. 但是也有一些需要注意的地方,下面是本人在项目中碰到过的一个问题,做此记录,便于以后查看. include标签用法. ...
- android中include
android中include. include标签用法. 1.新建一个xml文件,命名 head.xml head.xml文件内容如下: <?xml version="1.0&quo ...
- Android 中的 WebView实现 Html5 标签网页加载
自Android 4.4起,Android中的WebView开始基于Chromium(谷歌浏览器)支持浏览器的一系列功能,webkit解析网页各个节点,这个改变,使得WebView的性能大幅度提升,并 ...
- jsp中的包含 include标签和ejb的小知识点
<!-- 用inclue指令导入安全登录防护代码(静态包含) --> <!-- 静态包含:把被包含代码拷到当前类中形成一个新的类,执行.包含与被包含代码是合写在同一个类(servic ...
- Android中TabHost中实现标签的滚动以及一些TabHost开发的奇怪问题
最近在使用TabHost的时候遇到了一些奇怪的问题,在这里总结分享备忘一下. 首先说一点TabActivity将会被FragmentActivity所替代,但是本文中却是使用的TabActivity. ...
- Android中为TextView增加自定义的HTML标签
Android中的TextView,本身就支持部分的Html格式标签.这其中包括常用的字体大小颜色设置,文本链接等.使用起来也比较方便,只需要使用Html类转换一下即可.比如: textView.se ...
- Android中android:layout_alignParentBottom标签不生效
Android中一个奇怪的问题 Android 6.0中android:layout_alignParentBottom设置后不生效. 详见:https://code.google.com/p/and ...
随机推荐
- MySQL中 order by 与 limit 的执行顺序以及使用实例
在 MySQL 执行查询的时候,我们可能既要对结果集进行排序又要限制行数,那么此时 order by 与 limit 的执行顺序是怎么样的呢? order by与limit的执行顺序是:先执行orde ...
- C#下载apk文件
string fileName = "name.apk";//客户端保存的文件名 string filePath = Server.MapPath("ap ...
- 转:C#操作摄像头
转自: http://blog.csdn.NET/chenhongwu666/article/details/40594365 如有雷同,不胜荣幸,若转载,请注明 最近做项目需要操作摄像头,在网上百度 ...
- C# 异或校验算法
C# 的异或校验算法 直接上代码 public partial class FormCRC : Form { public FormCRC() { InitializeComponent(); } p ...
- android 关于setWidth()和setHeight()没反应的问题
在android开发过程中,对于控件的高度,宽度,虽然在xml中用android:layout_height="match_parent"设置了 高度(match_parent ...
- Shell编程二
告警系统需求分析 1.(虽然之前我们学习了zabbix,但有时候也不能满足我们的需求,比如比较冷门的监控项目需要写自定义脚本,或者服务器网络有问题,没有办法将客户端的数据发送到服务端.) 程序架构: ...
- 怎样优化UITableView的性能
在iOS App中,UITableView应该是使用率最高的.同一时候也是最为复杂的视图. 差点儿全部自带的应用中都能看到它的身影,可见它的重要性. 在使用UITableView时,会常常遇到性能上的 ...
- [求助] 关于DDR3的读写操作,看看我的流程对吗?
[求助] 关于DDR3的读写操作,看看我的流程对吗? 最近简单调了一下KC705开发板上面的DDR3,型号是MT8JTF12864HZ-1G6:有时候加载程序后,发现读出数据不是写进去的,在这将我的操 ...
- [elk]kibana搜索绘图
kibana绘图 好些日志入库了需要分析. 1,首先分析top10 url的table和柱状分布 2,其次想着分析下404所占比例,以及404所对应的url table. 3,最后分析一下请求总数. ...
- 转-linux下配置socks5代理
简介: 在Linux下有各种各样的代理程序可用,象最常用的Squid,是http/https代理,也能代理ftp请求,但它实际上 是个HTTP代理程序,不是ftp代理,但它能处理ftp代理请求,就象浏 ...