-
MainActivity.java
-
-
public class MainActivity extends Activity {
-
TextView show;
-
String[] items = new String[] {
-
"疯狂Java讲义", "疯狂Ajax讲义",
-
"轻量级Java EE企业应用实战",
-
"疯狂Android讲义" };
-
-
@Override
-
protected void onCreate(Bundle savedInstanceState) {
-
super.onCreate(savedInstanceState);
-
setContentView(R.layout.main);
-
show = (TextView) findViewById(R.id.show);
-
}
-
-
public void simple(View source)
-
{
-
AlertDialog.Builder builder = new AlertDialog.Builder(this)
-
// 设置对话框标题
-
.setTitle("简单对话框")
-
// 设置图标
-
.setIcon(R.drawable.tools)
-
.setMessage("对话框的测试内容\n第二行内容");
-
// 为AlertDialog.Builder添加"确定"按钮
-
setPositiveButton(builder);
-
// 为AlertDialog.Builder添加"取消"按钮
-
setNegativeButton(builder)
-
.create()
-
.show();
-
}
-
-
public void simpleList(View source)
-
{
-
AlertDialog.Builder builder = new AlertDialog.Builder(this)
-
// 设置对话框标题
-
.setTitle("简单列表对话框")
-
// 设置图标
-
.setIcon(R.drawable.tools)
-
// 设置简单的列表项内容
-
.setItems(items, new OnClickListener()
-
{
-
@Override
-
public void onClick(DialogInterface dialog, int which)
-
{
-
show.setText("你选中了《" + items[which] + "》");
-
}
-
});
-
// 为AlertDialog.Builder添加"确定"按钮
-
setPositiveButton(builder);
-
// 为AlertDialog.Builder添加"取消"按钮
-
setNegativeButton(builder)
-
.create()
-
.show();
-
}
-
-
public void singleChoice(View source)
-
{
-
AlertDialog.Builder builder = new AlertDialog.Builder(this)
-
// 设置对话框标题
-
.setTitle("单选列表项对话框")
-
// 设置图标
-
.setIcon(R.drawable.tools)
-
// 设置单选列表项,默认选中第二项(索引为1)
-
.setSingleChoiceItems(items, 1, new OnClickListener()
-
{
-
@Override
-
public void onClick(DialogInterface dialog, int which)
-
{
-
show.setText("你选中了《" + items[which] + "》");
-
}
-
});
-
// 为AlertDialog.Builder添加"确定"按钮
-
setPositiveButton(builder);
-
// 为AlertDialog.Builder添加"取消"按钮
-
setNegativeButton(builder)
-
.create()
-
.show();
-
}
-
-
public void multiChoice(View source)
-
{
-
AlertDialog.Builder builder = new AlertDialog.Builder(this)
-
// 设置对话框标题
-
.setTitle("多选列表项对话框")
-
// 设置图标
-
.setIcon(R.drawable.tools)
-
// 设置多选列表项,设置勾选第2项、第4项
-
.setMultiChoiceItems(items
-
, new boolean[]{false , true ,false ,true}, null);
-
// 为AlertDialog.Builder添加"确定"按钮
-
setPositiveButton(builder);
-
// 为AlertDialog.Builder添加"取消"按钮
-
setNegativeButton(builder)
-
.create()
-
.show();
-
}
-
-
public void customList(View source)
-
{
-
AlertDialog.Builder builder = new AlertDialog.Builder(this)
-
// 设置对话框标题
-
.setTitle("自定义列表项对话框")
-
// 设置图标
-
.setIcon(R.drawable.tools)
-
// 设置自定义列表项
-
.setAdapter(new ArrayAdapter<String>(this
-
, R.layout.array_item
-
, items), null);
-
// 为AlertDialog.Builder添加"确定"按钮
-
setPositiveButton(builder);
-
// 为AlertDialog.Builder添加"取消"按钮
-
setNegativeButton(builder)
-
.create()
-
.show();
-
}
-
-
public void customView(View source)
-
{
-
// 装载app\src\main\res\layout\login.xml界面布局文件
-
TableLayout loginForm = (TableLayout)getLayoutInflater()
-
.inflate( R.layout.login, null);
-
new AlertDialog.Builder(this)
-
// 设置对话框的图标
-
.setIcon(R.drawable.tools)
-
// 设置对话框的标题
-
.setTitle("自定义View对话框")
-
// 设置对话框显示的View对象
-
.setView(loginForm)
-
// 为对话框设置一个"确定"按钮
-
.setPositiveButton("登录", new OnClickListener() {
-
@Override
-
public void onClick(DialogInterface dialog,
-
int which) {
-
// 此处可执行登录处理
-
}
-
})
-
// 为对话框设置一个"取消"按钮
-
.setNegativeButton("取消", new OnClickListener()
-
{
-
@Override
-
public void onClick(DialogInterface dialog,
-
int which)
-
{
-
// 取消登录,不做任何事情
-
}
-
})
-
// 创建并显示对话框
-
.create()
-
.show();
-
}
-
-
-
private AlertDialog.Builder setPositiveButton(
-
AlertDialog.Builder builder)
-
{
-
// 调用setPositiveButton方法添加"确定"按钮
-
return builder.setPositiveButton("确定", new OnClickListener()
-
{
-
@Override
-
public void onClick(DialogInterface dialog, int which)
-
{
-
show.setText("单击了【确定】按钮!");
-
}
-
});
-
}
-
private AlertDialog.Builder setNegativeButton(
-
AlertDialog.Builder builder)
-
{
-
// 调用setNegativeButton方法添加"取消"按钮
-
return builder.setNegativeButton("取消", new OnClickListener()
-
{
-
@Override
-
public void onClick(DialogInterface dialog, int which)
-
{
-
show.setText("单击了【取消】按钮!");
-
}
-
});
-
}
-
}
-
-
-
XML文件
-
-
Simple-item.xml
-
-
<?xml version="1.0" encoding="utf-8"?>
-
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
-
android:orientation="horizontal"
-
android:layout_width="match_parent"
-
android:layout_height="wrap_content">
-
<!-- 定义一个ImageView,用于作为列表项的一部分。 -->
-
<ImageView android:id="@+id/header"
-
android:layout_width="wrap_content"
-
android:layout_height="wrap_content"
-
android:paddingLeft="10dp"/>
-
<LinearLayout
-
android:orientation="vertical"
-
android:layout_width="match_parent"
-
android:layout_height="wrap_content">
-
<!-- 定义一个TextView,用于作为列表项的一部分。 -->
-
<TextView android:id="@+id/name"
-
android:layout_width="wrap_content"
-
android:layout_height="wrap_content"
-
android:textSize="20dp"
-
android:textColor="#f0f"
-
android:paddingLeft="10dp"/>
-
<!-- 定义一个TextView,用于作为列表项的一部分。 -->
-
<TextView android:id="@+id/desc"
-
android:layout_width="wrap_content"
-
android:layout_height="wrap_content"
-
android:textSize="14dp"
-
android:paddingLeft="10dp"/>
-
</LinearLayout>
-
</LinearLayout>
-
-
-
Main.xml
-
-
<?xml version="1.0" encoding="utf-8"?>
-
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
-
android:orientation="vertical"
-
android:layout_width="match_parent"
-
android:layout_height="match_parent"
-
android:paddingTop="40dp"
-
android:gravity="center_horizontal">
-
<!-- 显示一个普通的文本编辑框组件 -->
-
<EditText
-
android:id="@+id/show"
-
android:layout_width="match_parent"
-
android:layout_height="wrap_content"
-
android:editable="false"/>
-
<!-- 定义一个普通的按钮组件 -->
-
<Button
-
android:layout_width="match_parent"
-
android:layout_height="wrap_content"
-
android:text="简单对话框"
-
android:onClick="simple"
-
/>
-
<!-- 定义一个普通的按钮组件 -->
-
<Button
-
android:layout_width="match_parent"
-
android:layout_height="wrap_content"
-
android:text="简单列表项对话框"
-
android:onClick="simpleList"
-
/>
-
<!-- 定义一个普通的按钮组件 -->
-
<Button
-
android:layout_width="match_parent"
-
android:layout_height="wrap_content"
-
android:text="单选列表项对话框"
-
android:onClick="singleChoice"
-
/>
-
<!-- 定义一个普通的按钮组件 -->
-
<Button
-
android:layout_width="match_parent"
-
android:layout_height="wrap_content"
-
android:text="多选列表项对话框"
-
android:onClick="multiChoice"
-
/>
-
<!-- 定义一个普通的按钮组件 -->
-
<Button
-
android:layout_width="match_parent"
-
android:layout_height="wrap_content"
-
android:text="自定义列表项对话框"
-
android:onClick="customList"
-
/>
-
<!-- 定义一个普通的按钮组件 -->
-
<Button
-
android:layout_width="match_parent"
-
android:layout_height="wrap_content"
-
android:text="自定义View对话框"
-
android:onClick="customView"
-
/>
-
</LinearLayout>
-
-
Login.xml
-
-
<?xml version="1.0" encoding="utf-8"?>
-
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
-
android:id="@+id/loginForm"
-
android:layout_width="match_parent"
-
android:layout_height="match_parent">
-
<TableRow>
-
<TextView
-
android:layout_width="match_parent"
-
android:layout_height="wrap_content"
-
android:text="用户名:"
-
android:textSize="10pt"/>
-
<!-- 输入用户名的文本框 -->
-
<EditText
-
android:layout_width="match_parent"
-
android:layout_height="wrap_content"
-
android:hint="请填写登录账号"
-
android:selectAllOnFocus="true"/>
-
</TableRow>
-
<TableRow>
-
<TextView
-
android:layout_width="match_parent"
-
android:layout_height="wrap_content"
-
android:text="密码:"
-
android:textSize="10pt"/>
-
<!-- 输入密码的文本框 -->
-
<EditText
-
android:layout_width="match_parent"
-
android:layout_height="wrap_content"
-
android:hint="请填写密码"
-
android:password="true"/>
-
</TableRow>
-
<TableRow>
-
<TextView
-
android:layout_width="match_parent"
-
android:layout_height="wrap_content"
-
android:text="电话号码:"
-
android:textSize="10pt"/>
-
<!-- 输入电话号码的文本框 -->
-
<EditText
-
android:layout_width="match_parent"
-
android:layout_height="wrap_content"
-
android:hint="请填写您的电话号码"
-
android:selectAllOnFocus="true"
-
android:phoneNumber="true"/>
-
</TableRow>
-
</TableLayout>