2011-01-02 18 views
1

ユーザーがリストビュー内のアイテムをクリックすると、警告ダイアログが表示されてしまいました。私は乾杯のメッセージをすることができますが、動作しない警告ダイアログを表示することはできません。次に、選択したアイテムを選択し、次の画面に表示して、選択したアイテムの連絡先の詳細などを表示するためのアラートダイアログにボタンを表示します。もし誰かが私に良いテクニックやヒントを教えてくれれば、これはすばらしいでしょう!私は非常に新しいプログラマーであり、どこでも試してみました。以下はAndroid - 選択したアイテムのリストビューでアラートダイアログを作成する

私のコードです:

public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 

     String[] taxi = getResources().getStringArray(R.array.taxi_array); 
     setListAdapter(new ArrayAdapter<String>(this, R.layout.listtaxi, taxi)); 

     ListView lv = getListView(); 
     lv.setTextFilterEnabled(true); 

    lv.setOnItemClickListener(new OnItemClickListener() { 
      public void onItemClick(AdapterView<?> parent, View view, 
       int position, long id) { 
      // When clicked, show a toast with the TextView text 
      Toast.makeText(getApplicationContext(), ((TextView) view).getText(), 
       Toast.LENGTH_LONG).show(); 
      } 
     }); 
    } 
} 

配列はのstrings.xmlファイルです。

ご協力いただければ幸いです。

+1

Toast.makeText(getApplicationContext(), ((TextView) view).getText(), Toast.LENGTH_LONG).show(); 

を交換してください。あなたは警告ダイアログを表示するためにそれを試しましたか?どのようなエラーが出ますか? – Cristian

+0

それは私がそれを試したときに何も表示されませんでした。はい、私はalertdialogを試みましたが、それはすべてリストを表示していました、そして、私がそれをクリックしたとき、それは何もしませんでした。傾けることはできません。 – Oli

答えて

0

あなたのコードは一般的に正しいです。私は、ダイアログを投稿するためのコードが正しく動作することを確認したいと思います。リストの外でそれを試して、それがonClick()ステートメント自体で動作するかどうかを確認してください。

+1

あなたは伝説です!遊びがあり、それを稼働させることができました。私のlistviewを最終的なlistviewに変更しなければならなかった。 – Oli

0

getApplicationContext()の代わりにYourClass.thisを試してみてください。

+0

私はそれを動作させることができました。そのコードは何をしますか? – Oli

+0

アプリケーション全体ではなく実際のアクティビティのコンテキストを取得します。それはトースト/ダイアログが表示されていないいくつかの問題の原因でした。 – stpn108

+0

okありがとう!感謝します – Oli

1

は、あなたが貼り付けるコードはトーストを示すためである

Toast.makeText(lv.getContext(), ((TextView) view).getText(), Toast.LENGTH_LONG).show(); 
関連する問題