1

ユーザーがリストビューのアイテムをクリックしたときにポップアップするアラートダイアログを表示するのに苦労していました。トーストメッセージを送信できますが、アラートダイアログが機能しないようです。次に、アラートダイアログにボタンを表示して、選択したアイテムを取得し、次の画面に表示して、選択したアイテムの連絡先の詳細などを表示できるようにします。誰かが私にこれを行うための良いテクニックやヒントについての洞察を与えることができれば、それは素晴らしいでしょう!私は非常に新しいプログラマーであり、どこでも試してみました。

以下は私のコードです:

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ファイルにあります。

どんな助けでも大歓迎です。

4

3 に答える 3

1

交換

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

Toast.makeText(lv.getContext(), ((TextView) view).getText(), Toast.LENGTH_LONG).show(); 
于 2011-09-02T21:44:24.077 に答える
0

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

于 2011-01-02T23:45:35.943 に答える
0

YourClass.thisの代わりに使用してみてくださいgetApplicationContext()

于 2011-01-03T00:04:10.877 に答える