美文网首页
Android学习(二)- 组件

Android学习(二)- 组件

作者: MA木易YA | 来源:发表于2019-06-22 22:19 被阅读0次

    1. Androidq启动流程

        系统运行程序时,首先会去访问AndroidMainfest.xml文件,文件内配置了应用程序所使用的所有组件,决定启动的activity,然后生成一个MainActivity对象,调用里面的oncreate()方法,oncreate()方法会去调用activity_main.xml,此文件配置了页面的布局方式,以此确定activity的显示内容。

    2. View

        View类是所有控件类的父类,通常使用它的子类,每个组件都有自己对应的类,可以用findViewById找到他们,但是此方法返回的是View类型,需要向下转型

    组件属性

    I. id——唯一标识
    android:id = "@+id/user" —— user为指定的id
    II. background——背景(图或者颜色)
    android:background = "@mipmap/bg"—— 存在指定目录下的图
    android:background = "#FF6600" —— 16进制RGB值
    III. padding——内边距
    android:padding = "16dp"—— 用dp作为单位
    android:padding = "@dimen/activity_margin"—— activity_margin是尺寸资源变量,需自定义

    IV. margin——外边距
    android:margin = "16dp"—— 用dp作为单位
    android:margin = "@dimen/activity_margin"—— activity_margin是尺寸资源变量,需自定义

    29($032$M31Z2U)3R95@1FD.png
    • 直接设置padding或者margin则定义了各个方位属性值一致,也可以设置单一方位,如上图,此外,paddingStart是和paddingLeft对应的,paddingEnd是和paddingRight对应的

    3. ViewGroup

    控制View如何摆放, 继承自View嘞,扩展View的功能用作容纳其他组件的容器

    ViewGroup控制其子组件分布时依赖的内部类

    I. ViewGroup.LayoutParams

    用作控制布局的高度和宽度

    android:layout:layout-height/width=

    • 后面的值可以跟具体的数值也可以使用系统定义的常量:
      • FILL_PARENT:匹配父容器,和父容器相同
      • MATCH_PARENT :匹配父容器,和父容器相同
      • WRAP_CONTENT:包裹自身内容,根据自身内容确定
    <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="@mipmap/bg"
        android:paddingBottom="@dimen/activity_vertical_margin"
        android:paddingLeft="@dimen/activity_horizontal_margin"
        android:paddingRight="@dimen/activity_horizontal_margin"
        android:paddingTop="@dimen/activity_vertical_margin"
        tools:context="com.mingrisoft.MainActivity" >
    </FrameLayout>
    

    II. ViewGroup.MarginLayoutParams

    控制子组件外边距

    image.png
    • 属性值和padding一致,值或者变量
    • 使用layout_marginStart等量词时,对系统最低版本有要求,sdk>api17
    • View和ViewGroup可以相互嵌套

    相关文章

      网友评论

          本文标题:Android学习(二)- 组件

          本文链接:https://www.haomeiwen.com/subject/aexpvqtx.html