AlertDialog对话框为我们做重要操作时。弹出一个框,做确认信息提示。
第一。AlertDialog 的对话框提示、内容比较简单。就不解释了、
package com.test;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.AlertDialog.Builder;
import android.content.DialogInterface;
import android.content.DialogInterface.OnClickListener;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.TextView;
public class AlertActivity extends Activity {
private Button mButton1;
private TextView testView;
private ImageView imageView;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
mButton1 = (Button) findViewById(R.id.myButton1);
final Builder alert = new AlertDialog.Builder(AlertActivity.this);
mButton1.setOnClickListener(new Button.OnClickListener(){
@Override
public void onClick(View v) {
alert.setIcon(R.drawable.icon);
alert.setTitle(R.string.app_about);
alert.setMessage(R.string.app_about_msg);
alert.setPositiveButton(R.string.str_ok, new OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.cancel();
}
});
alert.show();
}
});
}
}
效果图:
第二:AlertDialog 创建列表对话框。
package com.test;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.AlertDialog.Builder;
import android.content.DialogInterface;
import android.content.DialogInterface.OnClickListener;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.TextView;
public class AlertActivity extends Activity {
private Button mButton1;
private TextView testView;
private ImageView imageView;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
mButton1 = (Button) findViewById(R.id.myButton1);
final Builder alert = new AlertDialog.Builder(AlertActivity.this);
mButton1.setOnClickListener(new Button.OnClickListener(){
@Override
public void onClick(View v) {
alert.setIcon(R.drawable.icon);
alert.setTitle(R.string.app_about);
alert.setItems(new String[]{"红色","绿色","蓝色"}, new OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
System.out.println(which);
}
});
alert.show();
}
});
}
}
效果图:
第三。使用ALertDialog创建单选列表对话框。
只要AlertDialog.Builder 调用setSingleChoiceItems 就可以创建一个单选列表的对话框。
代码如下:
package com.test;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.AlertDialog.Builder;
import android.content.DialogInterface;
import android.content.DialogInterface.OnClickListener;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.TextView;
public class AlertActivity extends Activity {
private Button mButton1;
private TextView testView;
private ImageView imageView;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
mButton1 = (Button) findViewById(R.id.myButton1);
testView = (TextView) findViewById(R.id.str_res);
imageView = (ImageView)findViewById(R.id.imageView);
final Builder alert = new AlertDialog.Builder(AlertActivity.this);
mButton1.setOnClickListener(new Button.OnClickListener(){
@Override
public void onClick(View v) {
alert.setIcon(R.drawable.icon);
alert.setTitle(R.string.app_about);
alert.setSingleChoiceItems(new String[]{"红色","绿色","蓝色"}, 1, new OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
System.out.println(which);
}
});
alert.setPositiveButton("确定", null);
alert.show();
}
});
}
}
效果图:
如果想给某个AlertDialog 只添加额外的页面。
TableLayout layout =(TableLayout)getLayoutInflater().inflate(R.layout.login_user_activity,null);
dialog.setView(layout);
效果图: