Android AlertDialog,每个请求上都有动态变化的文本
2022-09-01 18:19:07
我想显示一个AlertDialog,其中包含一个可能在每个请求上更改的选项。因此,例如,一次我想显示“添加到联系人”选项,而另一次应该是“从联系人中删除”。
我的代码在第一次工作时确实有效,但是Android似乎缓存了AlertDialog,因此下次不会执行onCreateDialog。因此,该选项不再更改。我可以阻止此缓存,还是只有另一种方法可以更改该选项?
我正在使用SDK 1.5,但使用的是1.1。
@Override
protected Dialog onCreateDialog(final int id) {
...
String add_remove_contact = res.getString(R.string.profile_add_to_contacts);
if (user.getContacts().contains(profileID)) {
add_remove_contact = res.getString(R.string.profile_remove_from_contacts);
// TODO: this string is not changed when contact status changes
}
final CharSequence[] items = {res.getString(R.string.view_profile),
res.getString(R.string.profile_send_message),
add_remove_contact};
AlertDialog.Builder builder = new AlertDialog.Builder(this);
...
return builder.create();
}