UI布局--FXQ
一、RelativeLayout:【掌握】
1、概念:指按着控件之间的相对位置来进行布局。
2、RelativeLayout特有属性:
a、android:gravity 设置布局容器内子控件的对齐方式
b、android:ignoreGravity 设置布局管理器内哪个控件不受gravity属性的影响
3、RelativeLayout子元素的特有属性:LayoutParams
A、第一组:指兄弟控件之间的相对位置。该组属性的值是另一个控件的id。
layout_toRightOf 该控件在指定控件的右侧
layout_toLeftOf 该控件在指定控件的左侧
layout_above 该控件在指定控件的上侧
layout_below 该控件在指定控件的下侧
B、第二组:指兄弟控件之间的对齐关系。该组属性的值是另一个控件的id。
layout_alignRight 该控件与指定控件的右对齐
layout_alignLeft 该控件与指定控件的左对齐
layout_alignTop 该控件与指定控件的顶对齐
layout_alignBottom 该控件与指定控件的底对齐
layout_alignBaseline 该控件与指定控件的基线对齐
C、第三组:指控件与父布局之间的对齐关系。该组属性的值是true或者false。
layout_alignParentRight 该控件与父布局控件的右对齐吗?
layout_alignParentLeft 该控件与父布局控件的左对齐吗?
layout_alignParentTop 该控件与父布局控件的顶端对齐吗?
layout_alignParentBottom 该控件与父布局控件的底部对齐吗?
layout_centerInParent 该控件位于父布局控件的中心位置吗?
layout_centerVertical 该控件位于父布局控件的垂直中心位置吗?
layout_centerHorizontal 该控件位于父布局控件的水平中心位置吗?
二、基本控件:----ImageView:
类结构:
java.lang.Object
↳ android.view.View
↳ android.widget.ImageView
三、ImageView 控件
1、andorid:src 设置图片来源。属性值为android:src="@drawable/图片名称"
2、android:adjustViewBounds 用于设置 ImageView 是否调整自己的边界,来保持所显示图片的长宽比例。属性值为true或false
3、android:maxHeight 设置 ImageView 的最大高度。需要先设置android:adjustViewBounds为true,否则不起作用。
4、andorid:maxWidth 设置 ImageView 的最大宽度。需要先设置android:adjustViewBounds为true,否则不起作用。
5、android:scaleType 设置图片的尺寸大小调整所显示的图片如何缩放或移动,以适应ImageView的大小。
可选项:fitCenter、fitStart 、fitEnd、 fitXY、 center、centerCrop、centerInside、matrix
【备注:】
matrix :保持原图大小、从左上角的点开始,以矩阵形式绘图。
fitXY :把图片按照指定的大小在View中显示,拉伸显示图片,不保持原比例,填满View.
fitStart :把图片按比例扩大(缩小)到View的宽度,显示在View的上部分位置
fitCenter :把图片按比例扩大(缩小)到View的宽度,居中显示
fitEnd :把图片按比例扩大(缩小)到View的宽度,显示在View的下部分位置
center : 以原图的几何中心点和ImagView的几何中心点为基准,按图片的原来size居中显示,不缩放, 当图片长/宽超过View的长/宽,则截取图片的居中部分显示ImageView的size. 当图片小于View 的长宽时,只显示图片的size,不剪裁。
centerCrop :以原图的几何中心点和ImagView的几何中心点为基准,按比例扩大(图片小于View的宽时)图片的size。 居中显示,使得图片长 (宽)等于或大于View的长(宽),并按View的大小截取图片。 当原图的size大于ImageView时,按比例缩小图片,使得长宽中有一向等于ImageView,另一向大于ImageView。 实际上,使得原图的size大于等于ImageView
centerInside :以原图的几何中心点和ImagView的几何中心点为基准,将图片的内容完整居中显示, 通过按比例缩小原来的size使得图片长(宽)等于或小于ImageView的长(宽)
如何动态的加载图片
1、 给需要设置图片的imageView设置唯一表示的id
2、 在加载的Activity中通过findViewById()获取当前的imageView对象
3、 调用相应的方法进行设置
注意:android中的控件主要有两种体现形式
一种是在xml布局文件中体现在标签 属性
四、ImageView常用方法:
1、setImageBitmap()
2、setImageDrawable()
3、setImageResource()
五、ImagButton控件
用法同ImageView
<ImageButton src="@drawable/xx">
ImageButton与ImageView的使用开发中如何进行选择?
注意: ImageButton和ImageView的使用并没有明显的差距,一般如果只是显示图片建议使用ImageView如果需要添加相应的事件需要使用ImageButton
android:drawableTop 在按钮的上方设置指定的图片
android:drawableBottom 在按钮的下方设置指定的图片
android:drawableLeft 在按钮的左方设置指定的图片
android:drawableRight 在按钮的有方设置指定的图片
<Button android:drawableTop="@drawable/xx">
六、RadioButton控件及RadioGroup控件
1、RadioButton类结构介绍:
java.lang.Object
↳ android.view.View
↳ android.widget.TextView
↳ android.widget.Button
↳ android.widget.CompoundButton
↳ android.widget.RadioButton
2、RadioGroup类结构介绍:
java.lang.Object
↳ android.view.View
↳ android.view.ViewGroup
↳ android.widget.LinearLayout
↳ android.widget.RadioGroup
注意:为了保证RadioButton的互斥性 需要将RadioButton放到同一个视图组中进行管理 通一个RadioGroup中的RadioButton只能有一个被选中
3、RadionGroup中的setOnCheckedChangeListener()监听
方法一:通过RadionGroup中的setOnCheckedChangeListener()方法监听
方法二:RadioGroup类中的getCheckedRadioButtonId()方法
方法三:RadioButton也可以设置setOnClickListener()
七、CheckBox控件
1、类结构介绍:
java.lang.Object
↳ android.view.View
↳ android.widget.TextView
↳ android.widget.Button
↳ android.widget.CompoundButton
↳ android.widget.CheckBox
注意:CheckBox继承于Button,所以具有普通按钮的各种属性,但是与普通按钮不同的是, CheckBox 提供了可选中的功能。