Android UI工具包提供了一些布局管理器,它们使用起来相当容易,而且,大多数的时候,你只需要使用它们最基本的特征来实现UI。
http://blog.csdn.net/yohunl/article/details/5795904
执着于基本特征的使用对于创建UI来说,往往不是最高效的。一个常见的例子就是滥用LinearLayout,它将会导致View树中的View数量激增。View——更糟的是,布局管理器——添加到应用程序里都会带来一定的消耗:初始化,布局和绘制变得更加缓慢。嵌套布局的花销尤其“昂贵”,例如,如果你嵌套了一些LinearLayout,并使用了weight参数,这会导致子元素要计算两次。
在RelativeLayout里,每个View都是和父元素RelativeLayout对齐或是和其它View对齐的。例如,和RelativeLayout的底部对齐,标题位于其上并与RelativeLayout的顶端对齐。当描述GONE时,RelativeLayout不知道怎么去放置标题的底边缘。为了解决这个问题,你可以使用一个非常简单的布局参数:layout_alignWithParentIfMissing。使用HierarchyView能深入全面的理解xml布局文件,更可以通过它来学习别人优秀的布局技巧。下面是一些基本使用步骤:
(1)启动模拟器。
(2)到\android\tools\目录下,双击可以启动hierarchyviewerbat文件,打开一个图形界面。
(3)点击 load View hierarchy按钮,就可以捕获模拟器当前activity的画面布局信息。
![](http://img13.tianya.cn/photo/2010/8/7/26511298_36955747.jpg)
![](http://img18.tianya.cn/photo/2010/8/7/26511314_36955747.jpg)
(4)hierarchy通过树形结构展示布局形式。双击树节点可以展示单独的UI部分。
![](http://img13.tianya.cn/photo/2010/8/7/26511352_36955747.jpg)
(5)当模拟器activity画面改变后,点击““refresh””可以加载新的页面布局信息。
通过Hierarchy Viewer你就可以学习别人优秀的布局方式,
同时也更能更深入更全面更整体的把握xml布局文件。
体会UI和代码(java code)以及资源(res)的相互分离。