初学Android的一些布局

今天学到了关于接下来Android的一些布局,都是几种非常简单的布局,毕竟刚刚入门,从易到难,下面和大家来分享一下我所学到的几种小布局

1.线性布局(LinearLayout)类型于java中的swing一样,要么横(horizontal)着排 要么竖(vertical)着排。我把它这些个布局比作一个容器,然后它里面又可以存放这许多小容器(LinearLayout)来装一些控件,其中父类中的  gravity  控制其所以子控件在其的位置,而子控件则用layout_gravity来控制自己的位置。其次还学习了 “权重”(layout_weight) ,通俗的来说就是:假如是一个大LinearLayout里面放了三个LinearLayout 而权重的作用就是可以将它们分为三等份,可以上中下也可以左中右。其中对于控制一些控件的高度和宽度今天学到了两个:一个是match_parent还有一个是wrap_content,前者就是匹配父容器的大小,后者就是自己本身有多大就会多大,如图比较:初学Android的一些布局初学Android的一些布局


对于线性布局,只是粗陋的接触了皮毛。

2.表格布局(TableLayout)与网页中的表格差不多,有行(tr)有列(td),对于一个表格中的控件的位置,特性都可以在表格布局的头头对其进行控制,比如一个shrineColumns=“0” 就是对于 该表格下不管是第几行 但只要是第一列的都会将其收缩,不过要在<tablerow>里面才有用,如果在布局不在<tablerow>则产生不了作用。

而strentchColumns就是可以无线伸缩,还有个隐藏属性:collapseColumns=“0” 将第一列的都隐藏起来。。。还有上面提到的权重对表格布局中的控件也有作用

3.网格布局(GridLayout):

相对于前两个,我觉得网格布局比较简单,只要在表头设置 几行几列,然后后面就可以直接写,他会给你自动排序排下去:

初学Android的一些布局


还有上面图片所夸两行或两列的只要加上   layout_columnSpan=2 或  layout_rowSpan=2   还有一句代码不然任然实现不了,就是layout_grivaty=fill_horizontal(夸两列横着的) 如果是fill_vertical(竖着的)。 ,暂时学到的就是这样简单!

4.桢布局(FrameLayout)

桢布局主要是重叠效果,就是把一张图叠加在另一张图上,就是类似我们看电视然后点击暂停,就会有一个图标出现在电视屏幕,

桢布局的代码与思路都挺简单(可能我只是初学),比如,设置一个文本框,把长度和高度设置固定,不能再 android:layout_width="match_parent"
        android:layout_height="wrap_content" 这样设置了,不然如果长和高这样设置,就看不到那种叠加效果。然后再将你要重叠的两张图的位置(layout'_gravity)设置一致,然而我写的一个简单的例子就是把四张图一步一步变小,重叠起来。


今天学的东西挺简单的,但这只是几种布局的一种最基本的属性,原理等。慢慢来,每天学一点!!!!