• Android学习笔记05-布局Layout介绍


    1.Layout介绍

      为适应各种界面风格,满足开发的需要,Android提供了5种布局方式,分别是LinearLayout(线性布局)、FrameLayout(框架布局)、RelativeLayout(相对布局)、AbsoluteLayout(绝对布局)以及TableLayout(表格布局),通过这5种布局我们可以在手机屏幕上随心所欲的摆放各种控件。

      在Android的系统中,可视化的控件是从Android.view.View类中继承而来。控件的创建方式通常有2种方式:

      1、通过在xml布局文件中配置控件的各种属性,然后在程序中加载要使用的控件。

      2、直接在程序中设置控件属性,并加载控件。

      xml布局文件是android系统中定义控件的常用方法,这样做的目的与好处是显而易见的,使程序代码与图形UI分离,方便代码及图形UI的各自维护。

      xml布局文件必须包含在res/layout目录中,且每一个xml布局文件的根节点可以是任意的视图标签。为xml文件布局中的标签指定id时需要使使用如下形式:

      android:id=“@+id/标签名称”

      每一个标签的id都会在R类中生成与之对应的变量,该标签名称便保存在R文件当中了。

      如果是要使用xml布局文件,则需要在oncreate方法中使用setContentView来加载指定的xml布局文件。加载方法如下:

      public void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.main); }

    2.Layout常用属性

      在Android系统中表示单位长度的方式通常有三种,分别是px、dp、sp。

      px表示屏幕实际的象素。例如,320*480的屏幕即意味着该手机屏幕在横向有320个象素,在纵向有480个象素。dp表示屏幕的物理尺寸,大小为1英寸的1/72。sp是与刻度无关的像素,与dp类似,但是可以根据用户的字体大小首选项进行缩放。

      通常,如果设置表示长度、高度等属性时可以使用dp 或sp。但如果设置字体,则需要使用sp。

      1、如何控制某一控件在父控件中的相对位置呢?  

      在Android系统中提供了layout_margin,用来控制某一控件边缘相对于父控件的边距。

      其中,android:layout_marginTop表示某一控件相对于父控件顶部的距离。android:layout_marginLeft表示某一控件相对于父控件左边框的距离。android:layout_marginRight表示某一控件相对于父控件右边框的距离。android:layout_marginButtom表示某一控件相对于父控件底部的距离。

       2、如何控制某一控件中内容在该控件中的相对位置呢?

      在Android系统中提供了padding,用来控制某一控件中内容相对于该控件边缘的边距。

      其中,android:paddingTop表示某一控件中的内容相对于该控件边缘顶部的距离。android:paddingLeft表示某一控件中的内容相对于该控件左边缘的距离。android:paddingRight表示某一控件中的内容相对于该控件右边缘的距离。android:paddingButtom表示某一控件中的内容相对于该控件边缘底部的距离。

      3、android:gravity和android:layout_gravity的区别

      android:gravity用于设置View组件的对齐方式,而android:layout_gravity用于设置Container组件的对齐方式。

  • 相关阅读:
    决策树(chap3)Machine Learning In Action学习笔记
    AdaBoost-Machine Learning In Action学习笔记
    支持向量机-Machine Learning In Action学习笔记
    Alamofire 4.0 迁移指南
    从VSS到SVN再到Git 记Git的基本操作
    倍杀测量者
    P3166 数三角形
    APIO2014 序列分割(斜率优化好题)
    P3694 邦邦的大合唱站队
    ACwing 298 栅栏(单调队列DP)
  • 原文地址:https://www.cnblogs.com/britalient/p/3173098.html
Copyright © 2020-2023  润新知