android中常用的控件

来源:互联网 发布:淘宝商品管控 编辑:程序博客网 时间:2024/06/06 08:38

本人小白,大学期间,打算开始自学Android,准备用博客写下所学所得,希望有所收获,望大家互相帮助

1.TextView

TextView主要用于在界面上显示一段文本信息 。

TextView中使用 android:id 给当前控件定义了一个唯一标识符。

使用android:layout_width指定了控件的宽度

使用android:layout_height指定了控件的高度。

Android中所有的控件都具有这两个属性,可选值有三种match_parentfill_parentwrap_content,其中match_parentfill_parent的意义相同,现在官方更加推荐使用 match_parent 

match_parent表示让当前控件的大小和父布局的大小一样,也就是由父布局来决定当前控件的大小。 
wrap_content 表示让当前控件的大小能够刚好包含住里面的内容,也就是由控件内容决定当前控件的大小。

使用 android:gravity来指定文字的对齐方式,可选值有 topbottomleftrightcenter
等 , 可 以 用 “|” 来 同 时 指 定 多 个 值

2.Button

Button 是程序用于和用户进行交互的一个重要控件

我们可以在 MainActivity中为 Button的点击事件注册一个监听器,如下所示:
public class MainActivity extends Activity {
private Button button;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
button = (Button) findViewById(R.id.button);
button.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
//
在此处添加逻辑
}
});

}
}
这样每当点击按钮时,就会执行监听器中的 onClick()方法,我们只需要在这个方法中加
入待处理的逻辑就行了。


也可以使用实现接
口的方式来进行注册,代码如下所示:
public class MainActivity extends Activity implements OnClickListener {
private Button button;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
button = (Button) findViewById(R.id.button);
button.setOnClickListener(this);

}
public void onClick(View v) {
switch (v.getId()) {
case R.id.button:

// 在此处添加逻辑
break;
default:
break;
}
}

}

3.EditText
EditText 是程序用于和用户进行交互的另一个重要控件,它允许用户在控件里输入和编辑内容,并可以在程序中对这些内容进行处理。
<EditText
android:id="@+id/edit_text"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Type something here"

android:maxLines="2"

/>
</LinearLayout>


android:hint 属性来指定了一段提示性的文本
android:maxLines 指定了 EditText 的最大行数为两行,这样当输入的内容超过两行时,文本就会向上滚动,而EditText则不会再继续拉伸

4.ImageView

mageView是用于在界面上展示图片的一个控件,通过它可以让我们的程序界面变得更加丰富多彩
<ImageView
android:id="@+id/image_view"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ic_launcher"
/>

android:src 属性给 ImageView指定了一张图片,并且由于图片的宽
和高都是未知的,所以将
ImageView 的宽和高都设定为wrap_content,这样保证了不管图片
的尺寸是多少都可以完整地展示出来。



5.ProgressBar

ProgressBar用于在界面上显示一个进度条,表示我们的程序正在加载一些数据。
<ProgressBar
android:id="@+id/progress_bar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
/>

旋转的进度条表明我们的程序正在加载数据 ,当数据加载完时,通过android:visibility 这个属性使进度条消失,可选值有三种,visibleinvisiblegone 

visible表示控件是可见的,这个值是默认值,不指定android:visibility时,控件都是可见的。

invisible表示控件不可见,但是它仍然占据着原来的位置和大小,可以理解成控件变成透明状态了。

gone则表示控件不仅不可见,而且不再占用任何屏幕空间。

我们还可以通过代码来设置控件的可见性,使用的是setVisibility()方法,可以传入View.VISIBLEView.INVISIBLE View.GONE 三种值。

6.AlertDialog
AlertDialog 可以在当前的界面弹出一个对话框,这个对话框是置顶于所有界面元素之上的,能够屏蔽掉其他控件的交互能力, 因此一般AlertDialog都是用于提示一些非常重要的内容或者警告信息。 比如为了防止用户误删重要内容,在删除前弹出一个确认对话框。
用法:
修改 MainActivity中的onClick代码,如下所示:
public class MainActivity extends Activity implements OnClickListener {
……

public void onClick(View v) {
switch (v.getId()) {
case R.id.button:
AlertDialog.Builder dialog = new AlertDialog.Builder
(MainActivity.this);
dialog.setTitle("This is Dialog");
dialog.setMessage("Something important.");
dialog.setCancelable(false);
dialog.setPositiveButton("OK", new DialogInterface.
OnClickListener() {

public void onClick(DialogInterface dialog, int which) {
}
});
dialog.setNegativeButton("Cancel", new DialogInterface.
OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
}
});
dialog.show();
break;
default:
break;
}
}
}

首先通过 AlertDialog.Builder创建出一个AlertDialog的实例,然后可以为这个对话框设
置标题、内容、可否取消等属性,接下来调用
setPositiveButton()方法为对话框设置确定按钮
的点击事件,调用
setNegativeButton()方法设置取消按钮的点击事件,最后调用show()方法
将对话框显示出来。


7.ProgressDialog

ProgressDialog AlertDialog有点类似,都可以在界面上弹出一个对话框,都能够屏蔽
掉其他控件的交互能力。不同的是,
ProgressDialog 会在对话框中显示一个进度条,一般是
用于表示当前操作比较耗时,让用户耐心地等待。它的用法和
AlertDialog 也比较相似


0 0
原创粉丝点击