android布局设计
‘壹’ android设计界面时控件有多种排列方法,其中常用布局方式有
在android中我们常用的布局方式有这么几种:LinearLayout (线性布局),RelativeLayout (相对布局),TableLayout (表格布局),AbsoluteLayout (绝对布局),FrameLayout (帧布局)。LinearLayout 和 RelativeLayout 应该又是其中用的较多的两种。AbsoluteLayout 比较少用(我自己还没用过),因为它是按屏幕的绝对位置来布局的如果屏幕大小发生改变的话控件的位置也发生了改变。这个就相当于HTML中的绝对布局一样,一般不推荐使用。LinearLayout 顾名思义就是一条条的将控件布置下去,线性布局分为水平线性和垂直线性二者的属性分别为
android:orientation="horizontal" android:orientation="vertical" 。xmlns:android="http://schemas.android.com/apk/res/android" 很多人对这个感到困惑,其实它就是一个命名空间。RelativeLayout 相对布局。里面的每个控件之间的关系都是相对的。如果不设置相对关系的话默认摆放在屏幕左上角。重要属性如下:
android:layout_toRightOf="@id/city" :与id为city的控件的右边对齐。
android:layout_alignTop="@id/city" : 与id为city的控件的顶部对齐。
给出示意图如下所示:
android:layout_width="fill_parent" android:layout_height="wrap_content" 我一般在线性布局里面套相对布局,这时候需要注意上面两个属性相对布局的宽度可以设置为填充父控件,但是高度一般不要设置为填充父控件因为这样的话我想在相对布局外面在放控件就没有效果了因为屏幕已经被相对布局全部占据。
不管是用什么布局,宽度与高度这两个属性一定要弄清楚刚开始的时候我经常会发现有些控件没显示在界面上或者占据了整个屏幕,一检查原来是这里设置错了。还有不要忘记这两个属性在一般控件中都是不可或缺的,忘记设置的话就会报错。
‘贰’ android中五种布局有什么不同
五种布局方式,分别是:FrameLayout(框架布
局),LinearLayout
(线性布局),AbsoluteLayout(绝对布局),RelativeLayout(相对布局),TableLayout(表格布局)
一、FrameLayout
这个布局可以看成是墙脚堆东西,有一个四方的矩形的左上角墙脚,我们放了第一个东西,要再放一个,那就在放在原来放的位置的上面,这样依次的放,会盖住原来的东西。这个布局比较简单,也只能放一点比较简单的东西。
二、LinearLayout
线性布局,这个东西,从外框上可以理解为一个div,他首先是一个一个从上往下罗列在屏幕上。每一个LinearLayout里面又可分为垂直布局
(android:orientation="vertical")和水平布局(android:orientation="horizontal"
)。当垂直布局时,每一行就只有一个元素,多个元素依次垂直往下;水平布局时,只有一行,每一个元素依次向右排列。
linearLayout中有一个重要的属性 android:layout_weight="1",这个weight在垂直布局时,代表行距;水平的时候代表列宽;weight值越大就越大。
三、AbsoluteLayout
绝对布局犹如div指定了absolute属性,用X,Y坐标来指定元素的位置android:layout_x="20px"
android:layout_y="12px" 这种布局方式也比较简单,但是在垂直随便切换时,往往会出问题,而且多个元素的时候,计算比较麻烦。
四、RelativeLayout
相对布局可以理解为某一个元素为参照物,来定位的布局方式。主要属性有:
相对于某一个元素
android:layout_below="@id/aaa" 该元素在 id为aaa的下面
android:layout_toLeftOf="@id/bbb" 改元素的左边是bbb
相对于父元素的地方
android:layout_alignParentLeft="true" 在父元素左对齐
android:layout_alignParentRight="true" 在父元素右对齐
还可以指定边距等,具体详见API
五。TableLayout
表格布局类似Html里面的Table。每一个TableLayout里面有表格行TableRow,TableRow里面可以具体定义每一个元素,设定他的对齐方式 android:gravity="" 。
每一个布局都有自己适合的方式,另外,这五个布局元素可以相互嵌套应用,做出美观的界面。-----------------cvsyun。
‘叁’ Android设计规范 Material Design-Layout
Android设计规范Material Design中的Layout布局要点如下:
度量与边框基准网格:
- 所有组件都与间隔为8dp的基准网格对齐。
- 排版/文字与间隔为4dp的基准网格对齐。
- 工具条中的图标同样与间隔为4dp的基准网格对齐。
边框与间距:
- 移动设备布局模板包含多种屏幕和信息,描述了边框与间距如何应用于屏幕边界和元素。
- 左右各有16dp的垂直边框,带有图标或头像的内容有72dp的左边距,移动设备上有16dp的水平外边距。
- 垂直边距根据不同的布局元素和设计需求,可能取值为24dp、56dp、48dp或72dp等。
触摸目标尺寸:
- 最小的触摸目标尺寸是48dp。
- 在布局中设置图标或头像的边距时,需确保触摸目标不重叠。
增量边框:
- 增量边框定义了一个增量,然后使用几倍于这个增量的数字来决定应用中其它元素的尺寸和位置。
- 增量边框主要应用于桌面应用程序,部分适用于平板设备,较少应用于移动设备。
屏幕宽度与元素宽度:
- 应用于移动设备屏幕的宽度和移动设备、平板设备以及桌面应用程序中UI元素的宽度,需根据具体的屏幕尺寸和设计规范进行调整。
布局模板:
- 移动设备、平板设备和桌面应用程序均有各自的布局模板,这些模板详细展示了边框和边距如何应用于不同的屏幕和元素。
遵循这些规范可以确保Android应用在视觉上的一致性和用户体验的流畅性。
‘肆’ Android 布局framelayout到底怎么用
在谷歌官方文档中,帧布局(FrameLayout)的主要用途是放置碎片(Fragment),这是标准做法。帧布局与相对布局(RelativeLayout)的一个共同点是可以在一个控件上放置另一个控件,比如在一个ImageView1上放置另一个ImageView2。相对来说,帧布局使用频率较低,而相对布局(RelativeLayout)和线性布局(LinearLayout)则更常用。
帧布局的特点是将所有的子视图都放在一个虚拟的矩形区域内,每个子视图的位置由它的左上角坐标决定。这意味着,如果你在帧布局中添加多个视图,后添加的视图会覆盖前面的视图。这是一个非常有用的功能,特别是在设计需要动态调整布局的应用时。例如,你可以使用帧布局来实现一个动态的导航栏,其中当前页面的导航按钮会覆盖其他按钮。
帧布局在Android开发中扮演着重要的角色,尤其是在处理碎片时。通过使用帧布局,可以轻松地将多个碎片组合在一起,形成一个完整的用户界面。此外,帧布局还支持其他一些高级特性,如动画效果和视图可见性管理,这些特性使得帧布局在某些情况下比相对布局或线性布局更为灵活。
尽管帧布局的使用频率不高,但它仍然是一个非常有用的布局工具。通过合理地利用帧布局的功能,开发者可以创建出更具表现力和灵活性的用户界面。因此,了解帧布局的工作原理和应用场景,对于提高Android应用开发的质量是非常重要的。