View的属性:
1. 控件的宽高:(固定值 与两种状态)
android:layout_width="30dp"
android:layout_height="30dp"
2. 控件的可见度:(3种状态)
android:visibility="visible"
3. 控件的背景:(颜色 图片)
android:background="#F00"
4. 盒子模型:
android:layout_margin="10dp"
android:padding="5dp"
5. 点击事件:
android:onClick="haha"
------------------------------------------------------------------------------------------------
颜色值:颜色值基本有四种表现方式 (0表示在某个通道的颜色成分为空 F表示某个颜色通道为100%)
RGB(红绿蓝): #000~#FFF
ARGB(透明度+红绿蓝): #0000~#FFFF
RRGGBB: #000000~#FFFFFF
AARRGGBB: #00000000~#FFFFFFFF
---------------------------------------------------------------------------------------------------
View与ViewGroup的关系:
1. View表示控件 View与View之间是无法嵌套
2. 为了让控件能够嵌套其他控件
才产生了ViewGroup
3. ViewGroup的继承关系 ViewGroup一般比较少使用 我们一般使用其子类实现。
View
--ViewGroup
----AbsoluteLayout
----FrameLayout
----LinearLayout
----TableLayout
----RelativeLayout
---------------------------------------------------------------------------------------
LinearLayout: 线性布局指的是该布局下包含的子布局列表为横线或者竖线排布。
重要属性:
指定方向:(横向布局/纵向布局) android:orientation=""
权重:android:layout_weight="" (只能在LinearLayout的子控件中使用)
--------------------------------------------------------------------------------------------
RelativeLayout: 相对布局
(相对父控件布局 相对兄弟控件布局)
针对父控件
android:layout_centerHorizontal 横向居中
android:layout_centerVertical 纵向居中
android:layout_centerInParent 横向纵向居中
跟父控件顶部/底部/最左边/最右边对齐
android:layout_alignParentTop
android:layout_alignParentBottom
android:layout_alignParentLeft
android:layout_alignParentRight
针对已存在的兄弟控件(在某个控件的上面/下面/左边/右边)
android:layout_above
android:layout_below
android:layout_toLeftOf
android:layout_toRightOf
相对兄弟控件的边对齐
android:layout_alignTop
android:layout_alignBottom
android:layout_alignLeft
android:layout_alignRight
--------------------------------------------------------------------------------------------
FrameLayout: 帧布局 越是后面写的控件越在顶层 (应用场景: 霓虹灯
自定义一些高级的UI控件) 层层叠加
------------------------------------------------------------------------------------------
AbsoluteLayout :绝对布局控件在父控件中的绝对定位 (应用场景: 机顶盒开发)
android:layout_x="30dp"
android:layout_y="30dp"
------------------------------------------------------------------------------------------
TableLayout: 表格布局 (应用场景:银行表格)
------------------------------------------------------------------------------------------------
文本 按钮 输入框的继承关系
TextView:
android:text="文本"
android:textSize="20sp"
android:textColor="#FF0"
android:textStyle="bold"
android:lines="3"
android:singleLine="true"
android:typeface="monospace"
//设置字型。字形有:normal, sans, serif,monospace
android:clickable=””
Button:
属性与TextView基本相似。
不同点:
1. 按钮是自带了背景的控件
2. 按钮是可以点击了
EditText:
android:hint="请输入QQ"
android:editable="true"
android:maxLength="50" 设置最大的字数
android:inputType="textPassword"
----------------------------------------------------------------------------------------------
ToggleButton:
android:textOn="开启"
android:textOff="关闭"
android:checked="true"
RadioButton:
单选组
设置监听器的时候,通过 RadioGroup radioGroup.setOnCheckedChangeListener();
android:checked="true"
CheckBox:
设置监听器的时候 每个CheckBox都应该设置
android:checked="false"
--------------------------------------------------------------------------------------------
1.没有进度的进度条
大进度条
style="?android:attr/progressBarStyleLarge"
小进度条
style="?android:attr/progressBarStyleSmall"
2.有进度的进度条
style="?android:attr/progressBarStyleHorizontal"
android:progress="80"
android:max="100"
3.可拖动的进度条
SeekBar:可拖动的进度条
android:max="100"
android:progress="50"
4.星星进度条
RatingBar:星星进度条 基本单位为半颗星
android:numStars="4"
android:rating="3.5"
android:stepSize="0.3"
--------------------------------------------------------------------------------------------------
设置图片源
android:src="@drawable/ic_launcher"
代码设置图片源
imageView.setImageResource(resId)
imageView.setImageBitmap(bm);
imageView.setImageDrawable(drawable);
设置缩放模式
android:scaleType=""
1. 手机界面无法容纳更多的控件的时候,就需要滚动界面。
2. ScrollView :控制上下滑动的效果
3. HorizontalScrollView: 控制左右滑动的效果
4. ScrollView与HorizontalScrollView只能容纳一个子控件。
------------------------------------------------------------------------------------------------
1. 日期选择器:
2. 时间选择器: 24小时制
---------------------------------------------------------------------------------------------
webview网页控件
-----------------------------------------------------------------------------------------------
用途:圆角的输入框 单色背景的按钮
开发步骤:
1. 创建drawable文件夹
2. 创建一个shap文件. 文件名:业务名_控件名缩写_bg
3、应用到控件上
--------------------------------------------------------------------------------------------------
Selector: 如果想改变某个控件在某种状态下的背景 就需要使用SelectorDrawable.
开发步骤:
1.创建drawable文件夹
2.创建一个Selector文件.
3、应用到控件
-------------------------------------------------------------------------------------------------
一般只有使用带进度的进度条,需要修改其背景就需要使用LayerlistDrawable
开发步骤:
1.创建drawable文件夹
2.创建一个Layerlist文件
3. 应用到控件
-------------------------------------------------------------------------------------------------
1. 什么时候需要用到9Patch图? 图片拉伸模糊
2. 9Patch工具在哪里? ..\android-adt-bundle\sdk\tools\draw9patch.bat
3. 如何使用9Patch? 打开工具-->修改图片-->保存成.9.png格式的图片