Android之UI界面的常见控件
1.TextView
TextView是文本视图,只是用来显示文字的。在Activity中显示TextView, 要在对应的layout.xml文件去添加相应的控件标签。这些xml标签可以确定控件的位置,大小,颜色等属性。
实例代码:
<TextView
android:id="@+id/name_text_view"
android:layout_width="wrap_content"
android:layout_height="layout_height"
android:gravity="center"
android:textSize="30xp"
android:textColor="#ffffff"
android:text="bingo ">
</TextView>
属性表述:
-
android:id属性代表着TextView的Id,也就是TextView的唯一标示,在java代码中我们可以通过findViewById()方法来通过Id获取控件。
-
android:layout_width属性代表着控件的宽度,该属性的值是match_parent, 表示该控件的宽度与父视图的宽度相同。
-
android:layout_height属性代表着控件的高度,该属性的值是wrap_content,表示控件的高度根据内容的高度进行改变。
-
android:gravity属性代表着TextView中文字对齐方式,有多种方式
-
android:textSize属性代表着TextView中文字的型号,也就是文字的大小。
-
android:textColor属性设置的是TextView中文字的颜色,属性值是16进制的色值。
-
android:text属性就是用来设置TextView显示的值的。
使用findViewById()方法通过id获取上述控件,并获取TextView中的值以及设置TextView中的值。具体代码如下。
TextView myTextView = (TextView) findViewById(R.id.name_text_view);
String myText = myTextView.getText().toString();
myTextView.setText(myText+" Add");
2.Button
在Android中的按钮就叫Button,添加Button,需要在Activity对应的布局文件layout.xml中添加一个Button, 具体的xml代码如下所示。
<Button
android:id="@+id/click_button"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="点我">
</Button>
在Activity的类中也是使用findViewById来通过Id获取该按钮,获取按钮后我们需要给按钮绑定点击事件。
button.setOnClickListener(this);
//重写委托回调的方法
@Override
public void onClick(View v) {
switch (v.getId()){
case R.id.click_button:
//点击按钮后要做的事情
break;
default:
break;
}
}
3.EditText
Activity添加一个输入框,在Android中输入框的类型和标签都是EditText。下方是其xml布局方式.
<EditText
android:id="@+id/edit_text"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="placeHoder: type something here"
android:maxLines="6">
</EditText>
EditText标签中比之前多了两个属性:
- android:hint属性后边是一个字符串,其实就是用来占位用的字符串,功能是提示用户该输入框的作用
- android:macLines 用来设置输入框的最大行数。
在Activity中获取EditText对象,也是通过Id方式,下方代码是获取通过id实例化EditText对象,并获取其中的文本在Toast上显示。
EditText myEditText = (EditText) findViewById(R.id.edit_text);
String inputText = myEditText.getText().toString();
Toast.makeText(MainActivity.this, inputText, Toast.LENGTH_SHORT).show();
4.ImageView
为Activity添一张图片,运用ImageView。下方是其xml布局方式:
<ImageView
android:id="@+id/image_view"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/img_1">
</ImageView>
将以上控件显示在页面上,为button绑定事件显示图片:
private EditText editText;
private ImageView imageView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button button=(Button) findViewById(R.id.button);
editText = (EditText)findViewById(R.id.edit_text);
imageView = (ImageView)findViewById(R.id.image_view);
button.setOnClickListener((OnClickListener) this);
}
public void onClick(View v){
switch(v.getId()){
case R.id.button:
imageView.setImageResource(R.drawable.img_2);
break;
default:
break;
}
}