1. 创建 AlertDialog.Builder
使用 AlertDialog.Builder 类来创建一个 AlertDialog 对象。以下是一个简单的示例:
import android.app.AlertDialog;
import android.content.Context;
import android.content.DialogInterface;
public class AlertDialogHelper {
public static void showAlertDialog(Context context, String title, String message) {
AlertDialog.Builder builder = new AlertDialog.Builder(context);
// 设置对话框标题和消息
builder.setTitle(title);
builder.setMessage(message);
// 设置积极(positive)按钮及其点击事件
builder.setPositiveButton("OK", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// 处理点击 OK 按钮的逻辑
}
});
// 设置消极(negative)按钮及其点击事件
builder.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// 处理点击 Cancel 按钮的逻辑
}
});
// 创建并显示对话框
AlertDialog alertDialog = builder.create();
alertDialog.show();
}
}
2. 触发 AlertDialog
在你的活动(Activity)中,当需要显示对话框时,可以调用 showAlertDialog 方法:
import android.os.Bundle;
import androidx.appcompat.app.AppCompatActivity;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 触发对话框
showAlertDialog();
}
private void showAlertDialog() {
AlertDialogHelper.showAlertDialog(
this,
"Title of Dialog",
"This is the message of the dialog."
);
}
}
3. 自定义 AlertDialog 行为
你可以为对话框按钮的点击事件添加自定义逻辑。在上述示例中,点击 "OK" 按钮和 "Cancel" 按钮时,分别执行了 onClick 方法中的逻辑。你可以在这里编写你的代码来处理用户的操作。
4. 使用自定义布局
如果你想要在对话框中显示自定义的视图或布局,可以使用 setView 方法。以下是一个简单的示例:
import android.view.LayoutInflater;
import android.view.View;
import android.widget.TextView;
// 在 showAlertDialog 方法中添加 setView
public static void showAlertDialog(Context context, String title, String message) {
AlertDialog.Builder builder = new AlertDialog.Builder(context);
// 设置对话框标题和消息
builder.setTitle(title);
builder.setMessage(message);
// 使用 LayoutInflater 加载自定义布局
LayoutInflater inflater = LayoutInflater.from(context);
View customView = inflater.inflate(R.layout.custom_layout, null);
// 在自定义布局中找到需要操作的控件
TextView customTextView = customView.findViewById(R.id.customTextView);
// 设置自定义布局到对话框
builder.setView(customView);
// 设置积极(positive)按钮及其点击事件
builder.setPositiveButton("OK", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// 处理点击 OK 按钮的逻辑
}
});
// 设置消极(negative)按钮及其点击事件
builder.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// 处理点击 Cancel 按钮的逻辑
}
});
// 创建并显示对话框
AlertDialog alertDialog = builder.create();
alertDialog.show();
}
在这个示例中,custom_layout.xml 是一个自定义布局文件,你可以在其中定义自己需要的 UI 元素。
转载请注明出处:http://www.zyzy.cn/article/detail/15155/Android