1.控件
文本控件 TextView
(1)功能
用于在界面上显示文本信息。
(2)简单实例
显示简单的几个文本内容。
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:padding="4dp">
<TextView
android:layout_width="match_parent"
android:layout_height="100dp"
android:text="你好"
android:textColor="#000000"
android:textSize="24sp"/>
<TextView
android:layout_width="match_parent"
android:layout_height="100dp"
android:text="你是谁"
android:textColor="#6AC522"
android:textSize="24sp"/>
</LinearLayout>
- 资源文件的使用
-
在drawable文件夹中创建一个xml文件
在控件的background属性上进行设置
-
文本输入控件 EditText
EditText控件的常用属性
1、android:layout_gravity——设置控件显示的位置
默认top,还有bottom,center_vertical............
2、android:hin——设置提示文本
直接输入提示文字
3、android:textColorHint——设置提示文本的颜色
可以使用十六进制(可以直接在左边选择颜色),也可以在资源文件里设置好颜色值后通过id的形式引用
4、android:singleLine——设置单行输入
一旦设置为true,则文字不会自动换行。
5、android:capitalize ——设置英文字母大写类型。
设置如下值:sentences仅第一个字母大写;words每一个单词首字母大小,用空格区分单词;characters每一个英文字母都大写。
6、android:digits ——设置允许输入哪些字符。
如“1234567890.+-*/%\n()”
7、android:inputType——设置文本的类型
密码类型,数字类型(只能输入数字,并且会弹出数字的键盘),Email............
8、android:password ——密码,以小点”.”显示文本
9、android:phoneNumber ——设置为电话号码的输入方式。
10、android:editable ——设置是否可编辑。
如果为false的话仍然可以获取光标,但是无法输入。
11、android:autoLink=”all” ——设置文本超链接样式当点击网址时,跳向该网址
12、android:visibility——设置文本是否显示
ImageView 图像视图控件
ImageView的一些常用属性,并且这些属性都有与之对应的getter、setter方法:
- android:adjustViewBounds:设置ImageView是否调整自己的边界来保持所显示图片的长宽比。
- android:maxHeight:设置ImageView的最大高度。
- android:maxWidth:设置ImageView的最大宽度。
- android:scaleType:设置所显示的图片如何缩放或移动以适应ImageView的大小。
- android:src:设置ImageView所显示的Drawable对象的ID。
对于android:scaleType属性,因为关于图像在ImageView中的显示效果,所以有如下属性值可以选择:
- matrix:使用matrix方式进行缩放。
- fitXY:横向、纵向独立缩放,以适应该ImageView。
- fitStart:保持纵横比缩放图片,并且将图片放在ImageView的左上角。
- fitCenter:保持纵横比缩放图片,缩放完成后将图片放在ImageView的中央。
- fitEnd:保持纵横比缩放图片,缩放完成后将图片放在ImageView的右下角。
- center:把图片放在ImageView的中央,但是不进行任何缩放。
- centerCrop:保持纵横比缩放图片,以使图片能完全覆盖ImageView。
- centerInside:保持纵横比缩放图片,以使得ImageView能完全显示该图片。
- Button 按钮
-
继承TextView
常用属性
text
background 如果设置颜色是不生效的
如何想要设置颜色生效
修改values->themes->themes.xml文件中的 style parent 后加上.Bridge
想要给一个按钮设置多个背景图,在不同的操作下显示不同的背景图?
需要使用StateListDrawable
StateListDrawable
根据不同的状态,给background不同的值
如何创建?
右键drawable ->new->Drawable Resource File
注意点:drawable中不可以直接写rgb色,需要从color文件中引用
点击事件
- Android的组件都拥有点击事件,可以为其设置点击事件。我们常用的点击事件有4种。
第一种是,直接创建一个匿名内部类 -
button.setOnclickListener(new onClickListener(){ 覆盖 onClick(){ 完成点击事件的逻辑。 } })
Button bt_1 = (Button) findViewById(R.id.bt_1); bt_1.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { Toast.makeText(MainActivity.this, "匿名内部类实现点击件",0).show(); }
第二种,让我当前这个类,来实现OnclickListener这个接口,我一实现这个接口,我这个类就会报错,然后提示我实现onclickListener这个接口里面的onclick方法,然后我就到要指定点击时间的组件中写下方语句就行
Button,setOnClickListener(this);就可以了,
注意在写onclick(View v)方法的时候,需要判断v.getId()==Button的id,如果相同,那么就做逻辑功能。 -
public class MainActivity extends Activity implements OnclickListener{ @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Button bt_1 = (Button) findViewById(R.id.bt_1); bt_1.setOnClickListener(this); } @Override public void onClick(View v) { Toast.makeText(MainActivity.this, "本类实现OnclickListener接口", 0).show(); } }
第三种:我自己写一个myListener类来实现OnclickListener这个接口,然后这里面就实现了onclick方法.当button在创建点击事件的时候就button.setOnClickListener(new myListener());
-
class MyOnClickListener implements OnClickListener{ @Override public void onClick(View v) { Toast.makeText(MainActivity.this, "内部类实现点击事件", 0).show(); } } bt_1.setOnClickListener(new MyOnClickListener());
第四种:在布局文件中需要设定点击时间的组件上(组件可以是任何组件),设定onclick的属性,后面给的参数就是指定的点击事件的方法,然后复制这个方法名,到对应的activity类里面去实现这个方法,方法有固定写法
-
public void 方法名(View v){ 方法体; }
<Button android:id="@+id/bt_1" android:layout_height="wrap_content" android:layout_width="wrap_content" android:onClick="click" android:text="@string/bt1"/> 然后在MainAcvitity中添加相应的事件 public void click(View v){ Toast.makeText(MainActivity.this, "XML实现点击事件", 0).show(); }