2012-01-22 10 views
5

は私のダイアログのコードで、ダイアログにListViewがあるAlertDialog閉じてください、私はListViewをクリックすると、このダイアログを閉じたい:はどのように私はListView項目をクリックすると、ここで

public void createSearchDialog(final String[] Memo){ 
     LayoutInflater factory = LayoutInflater.from(this); 
     View searchView = factory.inflate(R.layout.seach_dialog, null); 

      lv = (ListView) searchView.findViewById(R.id.search_list); 
     lv.setAdapter(new MyPerformanceArrayAdapter(this, Memo, memo_PW)); 
     lv.setOnItemClickListener(new AdapterView.OnItemClickListener() { 
      public void onItemClick(AdapterView<?> arg0, View view, int position,long arg3) { 
       // TODO Auto-generated method stub 

         /// close dialog 
      } 
     }); 


     searchBuilder = new AlertDialog.Builder(this); 
     searchBuilder.setTitle("Search") 
       .setView(searchView) 
       .setNegativeButton("Back", new DialogInterface.OnClickListener() {    
       public void onClick(DialogInterface arg0, int arg1) { 
        // TODO Auto-generated method stub 

       } 
      }) 
       .show();  

    } 

私は入れてみましたonItemClick()

searchBuilder.create().dismiss(); 

    searchBuilder.create().cancel(); 

でこのコードは、しかし、それは働いていません。

+0

AlertDialogは、BY BY DEFAULTボタンをクリックすると自動的に閉じます。 – JoxTraex

答えて

15

変更.show()~dialog = searchBuilder.show();dialog.dismiss()~onItemClick()を入力します。

+0

作業完璧 –

+1

どこダイアログを初期化するために、どのような種類とどのように親切にコードで適切な答えを与える...それを使用することです。.. – Nepster

+1

AlertDialogダイアログ。それはグローバルになるだろう –

1

ダイアログを閉じるには、.dismiss()が機能します。これを適切な場所で呼び出していることを確認してください。 ListViewから選択が行われたときにダイアログを閉じるには、ListViewのアクションリスナーでダイアログを閉じる必要があります。

+0

searchBuilder.create()。dismiss();を入れます。 )onItemClickにそれはuは(searchbuilder.dismissで試すことができ – Intathep

+0

仕事はまだありません) – amandroid

+0

私はsearchbuilder.dismissを(呼び出すことはできません)、この方法は、(解任は、道のおかげアルンMGによって – Intathep

関連する問題