gpt4 book ai didi

java - 如何从 Alert.Builder 中的多选项目中获取选中的项目?

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:06:57 25 4
gpt4 key购买 nike

有没有办法在下一个 Alert.Builder 中获取有关已检查项目的一些信息?当有人单击肯定按钮时,我需要在 SharedPreferences 中保存一些 boolean 值。这些 boolean 值来自用户在警报中所做的选择。我怎样才能得到它们?

        AlertDialog.Builder builder = new AlertDialog.Builder(this);
final SharedPreferences preferences = getSharedPreferences("type_settings", MODE_PRIVATE);

boolean[] selectedTypes = getSelectedTypes(preferences);

builder.setIcon(R.drawable.menu_type)
.setTitle(R.string.list_dialog_title)
.setMultiChoiceItems(R.array.select_type_items, selectedTypes,
new DialogInterface.OnMultiChoiceClickListener() {
public void onClick(DialogInterface dialog, int whichButton, boolean isChecked) {
}
})
.setPositiveButton(R.string.types_save, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
SharedPreferences.Editor prefEditor = preferences.edit();
}
})
.setNegativeButton(R.string.types_cancel, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
dialog.cancel();
}
})
.create();
builder.show();

最佳答案

您可以使用 getCheckedItemIds()getCheckedItemPositions () 从 ListView 中获取选中项目的列表。您应该首先使用 AlertDialog.getListView() 获取对话框的 ListView 。

mAlert.getListView().getCheckedItemPositions ();

关于java - 如何从 Alert.Builder 中的多选项目中获取选中的项目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7220994/

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