gpt4 book ai didi

android - 将数据从 Activity 传递到对话框

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:26:58 27 4
gpt4 key购买 nike

我正在寻找一种将数据从 Activity 传递到对话框的方法。我正在尝试调用 showDialog(int);,但是我没有看到将任何数据传递到对话框的方法。我需要将一个字符串传递给对话框以显示确认:)

干杯

最佳答案

如果您的目标是 Android 2.2(API 级别 8 或更高),您可以使用

 public final boolean showDialog (int id, Bundle args)

并在 Bundle 中传递您的参数。参见 documentation .

如果您想支持旧的 Android 版本,您应该将参数保存在 Activity 类成员中,然后从您的 onPrepareDialog 访问它们功能。注意 onCreateDialog不符合您的需求,因为它只调用一次来创建对话框。

class MyActivity {

private static int MY_DLG = 1;
private String m_dlgMsg;

private showMyDialog(String msg){
m_dlgMsg = msg;
showDialog(MY_DLG);
}

private doSomething() {
...
showMyDlg("some text");
}

protected void onCreateDialog(int id){
if(id == MY_DLG){
AlertDialog.Builder builder = new AlertDialog.Builder(this);
....
return builder.create();
}
return super.onCreateDialog(id);
}

@Override
protected void onPrepareDialog (int id, Dialog dialog){
if(id == MY_DLG){
AlertDialog adlg = (AlertDialog)dialog;
adlg.setMessage(m_dlgMsg);
} else {
super.onPrepareDialog(id, dialog);
}
}
}

关于android - 将数据从 Activity 传递到对话框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6124989/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com