TextView:
<TextView
android:background=”#FFF” android:text=”文本”
android:padding文字距离控件边缘的距离
android:layout_margin:设置TextView控件距离相邻控件的距离
两者都可以加Left,Right,Top,,Bottom,比如android:layout_marginLeft. P125
/>
TextView的方法setTextColor(android.graphics.Color.RED)
设置控件背景色3种方法:
1.textView.setBackgroundResource(R.color.background);
2.textView.setBackgroundColor(android.graphics.Color.RED);
3.Resources resources=getBaseContext().getResources();
Drawable drawable=resources.getDrawable(R.color.background);
textView.setBackgroundDrawable(drawable); P126
居中显示:
android:gravity=”center”,”center_horizontal”,”center_vertical”
显示URL:
1. 自动识别属性,匹配
android:autoLink=”none”,”web”,”email”,”phone”,”map”,”all”
2. HTML解析 P127
带边框的TextView:
1. 编写一个继承TextView类的自定义控件,并在onDraw事件方法中画边框
2. 使用9-patch格式的图像作为背景图设置边框,图片的制作方法:P130
行间距:
3种方法
1. 利用android:lineSpacingExtra=”20dp”(设置精确的行间距)或者
android:lineSpacingMultiplier=”1.5” (设置默认行间距的倍数)
2. 利用Style资源设置行间距,和第一种类似,多的时候比较方便
在res\layout的xml的TextView控件的属性中写入 style=”@style/line_space”
其中指定的资源ID必须在res\values中的文件中定义(可以是任何的xml)
<style name=”line_space”>
<item name=”android:lineSpacingMultiplier”>1.5</item>
</style>
3. 代码中利用TextView的方法setLinewSpacing(50,1.2f)
其中第一个参数是android:lineSpacingExtra,
第二个参数是android:lineSpacingMultiplier,哪个更大选哪一个
TextView中有个ellipsize属性
TextView中有个ellipsize属性,作用是当文字过长时,该控件该如何显示,解释如下:1.android:ellipsize=”start”—–省略号显示在开头2.android:ellipsize=”end”——省略号显示在结尾3.android:ellipsize=”middle”—-省略号显示在中间4.android:ellipsize=”marquee”–以跑马灯的方式显示(动画横向移动)
EditText:
指定允许输入的字符的3种方法:
1. android:digits=”0123456789”
2. android:numeric=”integer”
a. 其中integer表示正整数
b. decimal表示小数
c. signed表示有符号的
这三个属性可以通过|来一起使用,比如”decimal|signed”
3. android:inputType=”number”
如果想完全隐藏Button,可以使用:android:visibility=”gone”,而不能使用android:visibility=”invisible”,是因为如果用后者,虽然会隐藏,当时系统仍然会预留出Button的位置(在布局中预留位置).
自动完成输入内容的控件:
AutoCompleteTextView
需要使用到AutoCompleteTextView类的setAdapter方法指定一个Adapter对象.
MultiAutoCompleteTextView
想要输入完一个字符串后,输入逗号(,)再输入仍然会有这个控件的功能的话.需要使用MultiAutoCompleteTextView类的 setTokenizer方法指定MultiAutoCompleteTextView.CommaTokenizer类的对象实例.P137
Button
普通的Button
可以用主actvity直接继承接口:OnClickListener,其中写入onClick方法
可以改变背景的Button
利用View的方法:setBackgroundResource
图像按钮控件:ImageButton
属性android:src=”@drawable/button1_1”
代码中修改:可以使用ImageButton类的方法:setImageResource
注意:ImageButton并不是TextView的子类,而是ImageView的子类.因此,android:text属性并没有用.如果想输出文字,可以自定义控件,在onDraw事件方法中写.
同时显示图像和文字的Button
android:drawableTop=”@drawable/star”
android:drawableBottom=”@drawable/star”
android:drawableRight=”@drawable/star”
android:drawableLeft=”@drawable/star”
单选按钮控件:RadioButton
同一组的要放在RaidoGroup中:
<RadioGroup …>
<RaidoButton android:text=”选项1”/>
<RaidoButton android:text=”选项2”/>
<RaidoButton android:text=”选项3”/>
<RadioGroup/>
设置默认选中项:((RadioButton)bn.getChildAt(0)).setChecked(true);
其中getChildAt(0)代表取到按钮的第一个.
开关状态按钮控件:ToggleButton
其中android:text并不起作用,应该使用android:textOff和android:textOn,例如:
<ToggleButton …
android:textOff=”关闭电灯” android:textOn=”打开电灯”
/>
改变默认的状态(绿色是打开,白色是关闭)的属性是:android:checked=”true”
或者用ToggleButton类的setChecked方法: setChecked(true)
复选框控件:CheckBox
注意:每次使用getLayoutInflater().inflate(…)方法装载同一个XML布局文件都会获得不同的对象实例,因此从这个对象获得的控件对象(通过findViewById方法获得对 象)也是不同的实例对象。
ImageView:
关键属性:
<ImageView …
android:src=”@drawable/icon” android:scaleType=”center”
center表示不缩放直接居中显示,fitCenter表示缩放到合适的位置显示。
代码设置控件的宽度和高度:
View的方法(ImageView是View的子类,所以也有此方法):
setLayoutParams(new LinearLayout.LayoutParams(200,100))
OnTouchListener接口下的onTouch
public boolean onTouch(View view,Event event)
{
event.getX()
event.getY() 这两个获得坐标的方法,获得的是只是针对这个控件的坐标
}
动态缩放和旋转图像:
P159