一、 布局:容器
在Java中的集合可以称之为容器,其中装的是数据,那么,在Android布局称之为容器的基础上,里面装的是什么呢?---里面装的是元素,元素指的是容器或者控件。等等,有的朋友可能就有点疑惑了,元素指的是容器,容器装容器?没错的啦,Android里面的布局是很大的范围,一个大的布局里面可以嵌套一些小的布局的。
二、布局到底是什么?
布局指的是对内容的规划与设计。通俗点说,在咱Android里面就是我们开发出来的东西长啥样。 先上一波API中关于View的视图树。
---------| View
---------------|Button
---------------|TextView
---------------|ViewGroup
-----------------------|LinearLayout
1. 线性布局:LinearLayout
线性布局既可以是元素也可以是容器。可以包含也可以被包含。特点: 在进行元素排列的时候,会按照从左到右或者从上到下的一种排列方式进行排列。
<LinearLayout
android:id="@+id/audio_bottom_control"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_gravity="center_horizontal|center_vertical"
android:layout_marginBottom="10dp"
android:layout_marginTop="28dp"
android:gravity="center_horizontal|center_vertical"
android:orientation="vertical">
</LinearLayout>
线性布局特有的一些属性
android:orientation="vertical/horizontal" 这个就是用来决定元素的排列是从左边到右边还是从上边到下面的排列方式
android:layout_weight="1" 权重 如果在一个LinearLayout中包含了这个属性的话那么就把所有的weight加起来,他在宽度上面所占有的比例就是总和分之自己
android:weightSum="4" :给LinearLayout设置一个权重之和
android:gravity:用于布局中的时候表示的是布局中的元素和整个布局之间的关系
android:alpha="0.5" 设置一个透明度
android:keepScreenOn="true" 保持那个屏幕常亮
注意:在线性布局中默认的是左上角开始来排列元素。
默认的元素的排列是从左到右进行排列的,并且如果是一行满了的话那么是不会进行自行换行。如果在LinearLayout中只要一个元素使用了weight这个属性的话,那么其他的属性在宽度值不为0的情况下,这个元素就占有剩下的所有的宽度。
2. 相对布局:RelativeLayout
al开头的--------->与谁的某个地方对齐
注意:有parent的表示与他爹的某个地方对齐
没有parent的表示的是与自己的某一个兄弟对齐
to开头的表示是在某一个元素的左边或者在某一个元素的右边
mar:外边距
pad:内边距
cen:表示处于容器的某个中间位置
below:表示的是处于某一个元素的下面
above:表示的是处于某一个元素的上面
相对布局也是从左上角开始排列的。如果相对布局没有指定相对的属性的话,就会进行重叠显示。
三、Android中事件的绑定
1、找到控件
2、设置事件的监听
3、添加监听程序
常见的事件:点击事件和长按事件。
网友评论