控件View
View的基本属性
View是Android的基本视图,所有控件和布局都是View类的子类直接或间接派生而来的
View一般会放在ViewGroup中
View在xml文件中的常用属性
- id:视图的编号 string
- layout_width:宽度
值 | 含义 |
---|---|
dp数值 | 具体数值 |
match_parent | 与上级试图一样宽 |
warp_content | 与内部试图一样宽,如果超过上级视图按上级视图宽度,超出部分滚动 |
- layout_height:高度,取值说明同上
- layout_margin:指定该视图与周围视图之间的空白距离,另有layout_marginTop,layout_marginBottom,layout_marginLeft,layout_marginRight分别表示上下左右宽度
- minWIdth:该视图最小宽度
- minHeight:该视图最小高度
- background:背景颜色,可以是图片或颜色
- layout_gravity:该视图与上级视图的对齐方式,若同时适用多种对齐方式,则用 | 连接起来
XML中的对齐方式 | Gravity类中的对齐方式 | 说明 |
---|---|---|
left | LEFT | 靠左对齐 |
right | RIGHT | 靠右对齐 |
top | TOP | 向上对齐 |
bottom | BOTTOM | 向下对齐 |
center | CENTER | 居中对齐 |
center_horizontal | CENTER_HORIZONTAL | 水平方向剧中 |
center_vertical | CENTER_VERTICAL | 垂直方向居中 |
- padding:指定该视图边缘与内部之间的空白距离。另有paddingTOP,paddingBOTTOM,paddingLEFT,paddingRIGHT指定上下左右的间距
- visibility:指定视图的可见类型
XML中的可视类型 | Gravity类中的可视类型 | 说明 |
---|---|---|
visible | VISIBLE | 可见,默认值 |
invisible | INVISIBLE | 不可见。虽然看不到但占据空间 |
gone | GONE | 消失。不可见且不占据空间 |
注:padding与margin的区别
padding是到里层距离
margin是到外层距离
视图在JAVA代码中常用的设置方法
setLayoutParams(ViewGroup.LayoutParams params):设置该视图的布局参数
参考资料:
Android开发:LayoutParams的用法
LayoutParams相当于一个Layout的信息包,封装了长宽高等信息。
LayoutParams类只是简单的描述了宽高,宽和高都可以设置成三种值:
1,一个确定的值;
2,FILL_PARENT,即填满(和父容器一样大小);
3,WRAP_CONTENT,即包裹住组件就好。
这个函数是子对父的,即子控件中要加setLayoutParams
注意,这个函数的参数必须是父控件!!!
常用写法:
1.使用new创建一个新的LayoutParams对象作为参数(动态大小)
基本语法为:
setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT));
依据父控件的类型加限制
例子如下:
XML文件
<LinearLayout
android:id="@+id/LinearInside"
android:layout_width="match_parent"