如何像android中没有微调器的微调器一样弹出列表?
我的活动中有一个微调器小部件,它允许用户选择列表名 通常,微调器的功能是在列表之间切换,但对于几个实例,我交换了选择更改侦听器,以使用相同的选项列表执行不同的功能。一旦做出选择,旧的听众就会恢复,生活就会继续 这是一个糟糕的安排。相反,我希望有一个函数,它只接受一个选择侦听器和一些其他参数,并显示一个弹出列表,该列表由与微调器相同的光标(或相同的光标)填充,而不使用微调器本身如何像android中没有微调器的微调器一样弹出列表?,android,listview,popup,spinner,Android,Listview,Popup,Spinner,我的活动中有一个微调器小部件,它允许用户选择列表名 通常,微调器的功能是在列表之间切换,但对于几个实例,我交换了选择更改侦听器,以使用相同的选项列表执行不同的功能。一旦做出选择,旧的听众就会恢复,生活就会继续 这是一个糟糕的安排。相反,我希望有一个函数,它只接受一个选择侦听器和一些其他参数,并显示一个弹出列表,该列表由与微调器相同的光标(或相同的光标)填充,而不使用微调器本身 有什么方法可以做到这一点吗?使用AlertDialog.Builder并通过setAdapter()提供一个适配器来生成
有什么方法可以做到这一点吗?使用
AlertDialog.Builder
并通过setAdapter()
提供一个适配器来生成您的行
在您的情况下,我不会使用相同的光标
,因为光标
具有当前行的固有概念,因此在SpinnerAdapter
使用光标时弄乱它可能会使微调器
出错。使用相同的光标
这是使用AlertDialog和AlertDialog.Builder弹出详细信息的最佳示例
AlertDialog dialog;
final CharSequence[] items = { "Item1", "Item2" };
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle(title);
builder.setItems(items, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int pos) {
switch (pos) {
case 0:
{
Toast.makeText(this,"Clicked on:"+items[pos],Toast.LENGTH_SHORT).show();
}break;
case 1:
{
Toast.makeText(this,"Clicked on:"+items[pos],Toast.LENGTH_SHORT).show();
}break;
}
}});
dialog=builder.create();
dialog.show();
如果您不受API级别11的限制,那么它接近您想要的 您可能想使用
CharSequence[] items = {"Mangoes", "Bananas", "Grapes"};
new AlertDialog.Builder(getActivity())
.setTitle("Action")
.setItems(items, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int item) {
if(item==0){
// Mangoes selected
}
else if(item==1){
// Bananas selected
}
else if(item==2){
// Grapes selected
}
}
})
.show();
参见示例我不知道AlertDialog.Builder有这个功能。谢谢你的提示。如果我能找到答案,我会接受你的答案。太棒了!这正是我需要的。这应该在答案中更受欢迎。