выполнение действия щелчка по списку внутри диалогового окна - PullRequest
2 голосов
/ 24 февраля 2012

в моем приложении, когда я нажимаю кнопку, показывающую диалоговое окно со списком. Список элементов показан из списка массивов. Ниже приведен фрагмент моего кода

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();
    }

Здесь я получаю окно оповещения и список предметов, когда я нажимаю, я могу получить позицию.

Но при нажатии на список я хочу закрыть диалоговое окно и начать асинхронную задачу, как это сделать ......

1 Ответ

1 голос
/ 24 февраля 2012

Объявите 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
    }
}
...