轻松学Android开发之Android布局的设计.pptxVIP

  • 24
  • 0
  • 约4.66千字
  • 约 28页
  • 2018-08-24 发布于湖北
  • 举报

轻松学Android开发之Android布局的设计.pptx

第2章 Android布局设计;布局文件主要是规范和设计UI界面,它采用XML格式开发,与程序的逻辑代码分离开来,使程序的开发变得清晰、明了。 ;Android界面通常由容器和控件构成。为了规范控件在容器中的显示,设计人员通常需要规定控件在界面中的显示方式,这就是布局。 1.布局的作用 在布局中,通过设置控件或者容器的属性来规定控件的显示方式 2.布局的实现——布局文件 在Android应用程序中,界面通常都是通过布局文件设定。该文件采用XML文件格式。每个应用程序默认包含一个主界面的布局文件。该文件位于项目文件中res目录下的layout子目录中。双击打开该文件,首先可以看到界面设计面板。单击activity_main.xml选项卡,可以查看该界面对应的布局文件 ;新建的Android应用程序,默认布局文件为相对布局。因此,在开发时如果需要使用其他布局,则需要进行布局修改。 ;Android布局分为:相对布局、线性布局、表格布局、帧布局、网格布局五种,如图2.3所示。因为Android设备多样,分辨率不统一,用绝对布局往往在不同的机型上会有很差的效果,所以,不推荐用绝对布局来布局UI。 ;布局文件是每个Android程序开发的必要文件,以下是布局文件中共用的属性。 1.布局文件的命名空间 布局文件的命名空间由系统自动生成,固定包含xmlns:android和xmlns:tools两部分。 2.布局中的单位 布局中的距离单位:dp、px、sp。 dp:即dip,device independent pixels(设备独立像素),不同设备有不同的显示效果,这个和设备硬件有关,一般我们为了支持WVGA、HVGA和QVGA 推荐使用这个,不依赖像素; px: pixels(像素),不同设备显示效果相同,一般我们用HVGA代表320x480像素,这个用的比较多; sp: scaled pixels(放大像素),主要用于字体显示。 如果设置表示长度、高度等属性时可以使用dp。但如果设置字体大小,需要使用sp。 当我们在Eclipse中开发程序时,Eclipse默认采用相对布局(RelativeLayout)。相对布局包括相对容器布局和相对控件布局。;子控件相对于父容器的相对布局,主要是相对父容器的四周边框而言,如图2.4所示。例如,layout_alignParentLeft表示子控件以父容器的左边缘为参照标准;layout_marginLeft表示子???件左边缘与父容器左边缘之间的空隙距离,单位为dp。如果控件距离左右边框相等,可以直接使用layout_centerHorizontal设置水平居中;同理,如果控件距离上下边框相等,可以直接使用layout_centerVertical设置垂直居中;如果控件距离上下边框相等,并且同时距离左右边框也相等,就可以使用layout_centerInParent,设置该控件在整个父容器中居中。 ;相对父容器布局的语法如下所示: ;整个语法包括以下几部分: xmlns:android和xmlns:tools为命名空间,由系统自动产生; layout-width和layout-height分别为布局的宽度和高度,参数有fill-content、match-content、wrap-content三种; layout_centerHorizontal,表示widget在父容器中水平居中;还有layout_centerVertical,表示widget在父容器中垂直居中;layout_centerInParent,表示widget位于父容器中央位置。 ;相对于控件的相对布局,是指一个控件以另外一个控件为参照物进行布局。首先要确定出该控件的位置,通过ID唯一标识某一具体控件。Layout_above表示其他控件相对位于该控件的上方。Layout_ alignTop,表示其他控件以该控件上边缘为参考标准。Layiout_marginTop,表示当前控件上边缘与已知控件之间的空隙距离,单位为dp。 ;相对其他控件布局的语法如下所示: ;整个语法包括以下几部分: xmlns:android和xmlns:tools为命名空间,由系统自动产生; layout-width和layout-height分别为布局的宽度和高度,参数有fill-content、match-content、wrap-content三种; android:id唯一标识某一具体控件; layout_toRightOf,表示widget位于已知widget右侧;还有layout_toLeftOf,表示widget位于已知widget左侧;layout_above,表示widget位于已知widget上方;layout_below,表示widge

文档评论(0)

1亿VIP精品文档

相关文档