Android 之 列表对话框



列表对话框:在对话框中以列表的形式显示;

使用知识点:builder.setItems(参1,参2);
参1:列表的内容(一般为一个数组/集合  或者引用数组资源)
参2:列表中元素的点击事件;

案例:使用列表对话框显示专业信息;
资源文件如下:
<!-- 使用数组资源初始化对话框中的数据   -->

	<string-array name="arr_professional">
	    <item>android</item>
	    <item>.net</item>
	    <item>java</item>
	    <item>c/c++</item>
	</string-array>


java代码如下:
package com.example.notebook_dialog_two;

[size=small][b]
import android.app.Activity;
import android.app.AlertDialog.Builder;
import android.content.DialogInterface;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.Toast;

/*  列表对话框测试   */
/* 效果实现:点击一个按钮, 弹出一个对话框,该对话框中以列表的形式显示一组数据 */
public class List_dialog extends Activity {

	private Builder builder = null;
	private Button list_dialog_btn = null;
	protected void onCreate(Bundle savedInstanceState) {
		// TODO Auto-generated method stub
		super.onCreate(savedInstanceState);
		setContentView(R.layout.list_dialog);
		
		/* 应用创建的时候就实例化一个对话框的对象 */
		builder = new Builder(this);
		
		/* 通过findViewById(); 获取组件的对象 */
		list_dialog_btn = (Button) findViewById(R.id.testRadioBtn);
		
		/* 按钮的点击事件 */
		list_dialog_btn.setOnClickListener(listener);
	}
	
	/* View 的点击事件:*//* 事件的动作:弹出对话框  */
	OnClickListener listener = new OnClickListener() {

		public void onClick(View v) {
			
			String[] arr = getResources().getStringArray(R.array.arr_professional);
			builder.setTitle(getResources().getString(R.string.professional));
			builder.setIcon(R.drawable.ic_launcher);
			
			/* 设置列表数据,并编写列表数据行的点击事件 */
			builder.setItems(arr, new DialogInterface.OnClickListener() {
				/* 该事件动作:提示用户选择的专业信息 */		
				public void onClick(DialogInterface dialog, int which) {
						String temp = getResources().getStringArray(R.array.arr_professional)[which];
						Toast.makeText(List_dialog.this, "您选择的专业时:"+temp, 1000).show();
				}
			});
			
			/* 创建并显示 */
			builder.create().show();
		}
	};
	
}
[/b][/size]


效果图如下:

猜你喜欢

转载自sunzone.iteye.com/blog/1870288