第二天

主要内容
    UI布局--四种布局
    UI控件的事件处理
    UI常用控件及使用
    Toast--吐司
    dailoge--对话框
----------------------------------------------------------------------------
1,View的概念
        a,用来显示数据、影像或是其他信息的组件,组件全部继承与View
           ViewGroup是一种View容器,本身也是一种View,但是可以包含View及其他ViewGroup组件的View,
           例如: LinearLayout,ViewGroup继承自View,所以ViewGroup is-aView的观念,只是
           ViewGroup有容器的特色。
        b,UI组件都放在android.widget包,android.view包中,

        c,UI编程方式
            1.通过java代码创建view
            2.用xml文件(ui语言)--用的比较多
    2,布局对象
        a, activtiy与layout的关系:
            Activity就是布满整个窗口或者悬浮于其他窗口上的交互界面
            一般一个Activity都有一个以上的layout,用于摆放要显示的组件
            
            线性:LinearLayout
            表格:TableLayout
            相对:RelativeLayout
            帧(框架布局):FrameLayout
            绝对:AbsoluteLayout
            以上布局都可以嵌套使用
        
        xml布局文件和属性:
            xml布局文件:
                1,必须在res/layout目录
                2,xml中的根节点必须是xmlns:android="http://schemas.android.com/apk/res/android"
                    XML命名空间,告诉Android开发工具你准备使用Android命名空间里的一些通用属性

                3,xml中的每个组件的id会在R类中生成对应的变量,在代码中可以引用的到
                4,需要在Activity的onCreate方法中调用setContentView(R.layout.main)显示xml中的view
            xml中的属性
                长度单位:px,像素,表示屏幕的实际像素,比如320*480  (很少用)
                      dp(dip) 是屏幕的物理尺寸, 大小为1英寸的1/72
                      sp(与刻度无关的像素),
                      技巧:长度和高度: 可以选择dp/sp, 如果是字体的话,用sp
                 android:layout_width="68dp"   // 是指定控件的显示大小的区域
                 android:layout_height="94dp"

                layout_margin: 是控件边缘相对于父空间的边距,有top,buttom,left,right
                (注意哦,如果选择了对齐方式,比如居中对齐,margin=0dp时,是以中间为开始的,不是从手机的顶部开始的)
                layout_padding: 是控件内容相对于空间边缘的边距
                layout_gravity : 设置组件相对容器(layout)的对齐方式
                gravity: 设置View组件(即是控件中内容)的对齐方式
                "wrap_content" :根据内容的大小而定
                match_parent 和fill是一样的,刚好显示空间中的内容
                android:layout_weight: 各个空间在布局中的比重
                @+id/test :为组件设定id
    ----------------------------------------------------------------------------------
    线性布局:
        掌握点
        0,控件是依次一个一个的摆放
        1,在xml文件中通过来表示
        2,分为垂直和水平布局特性,每行每列只能有一个组件
        3,子view中的gravity属性和weight属性
        4,layout_weight:layout中控件在某个方向上的占用比例
        5,线性布局是可以嵌套
    属性解释:
        layout_weight属性:权重,默认为0,意思是需要显示多大的视图就占据多大的屏幕空间
                最好和wrap_content配合使用
            
            在一个容器中的view的占用比例为view的权重/所有view权重之和
            比如有三个view: v1 :1
                    v2:2   :该view占用整个容器的2/4
                    v3:1   
        layout_gravity属性:在整个容器中的对齐方式:上下左右居中等等
    例子:
    

        

你可能感兴趣的:(第二天)