在我的应用程序中,当我单击显示带有 ListView 的对话框的按钮时。项目列表显示在数组列表中。以下是我的部分代码
private void album_list_box()
{
Dialog dialog = new Dialog(Nearme_Image_DetailView.this);
AlertDialog.Builder builder = new AlertDialog.Builder(Nearme_Image_DetailView.this);
builder.setTitle("Select the Album Name");
ListView modeList = new ListView(this);
for(int i =0; i< Get_album_name_array.size(); i++)
{
stringArray = Get_album_name_array.get(i);
HashMap<String, Object> map = new HashMap<String, Object>();
map.put("fname", stringArray);
listItem.add(map);
}
SimpleAdapter listItemAdapter = new SimpleAdapter(this,listItem,android.R.layout.simple_list_item_1,new String[] {"fname"}, new int[] {android.R.id.text1});
modeList.setAdapter(listItemAdapter);
builder.setView(modeList);
dialog = builder.create();
dialog.show();
}
我在这里获取警报框和项目列表,当我单击时我可以获取位置。
但是当单击列表时我想关闭对话框并且我想启动一个异步任务,如何做到这一点......
最佳答案
将dialog
声明为类成员,为ListView
设置点击监听器
lv.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent,View view,int position,long id) {
//your code
mdialog.cancel(); // close the dialog box
asynctask = new ASyncTask().execute(); // start a aynctask of your choice
}
}
关于android - 在对话框内的 ListView 上执行 onclick 操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9429550/