0

id:listのListViewがある小さなカスタムダイアログがあります。リソース(R.array.tones)にある文字列を入力したいのですが、これを機能させるのに非常に大きな問題があり、さまざまな解決策を試しました。これは機能すると思われる最新のものですが、nullポインターがスローされます。トーンリストの例外。

    Dialog dialog = new Dialog(this);

    dialog.setContentView(R.layout.tone_dialog);
    dialog.setTitle(R.string.tonePromptTitle);
    ListView toneList = (ListView)findViewById(R.id.list);

    ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this, R.array.tones, android.R.layout.simple_list_item_1);

    toneList.setAdapter(adapter);

    dialog.show();

私のクラスはListActivityではなくActivityを拡張しているだけです。それ以外の場合は、リストビュー専用の新しいクラスを作成する必要があります。長いコードをお詫びします。私はここで新しく、まだすべての機能を理解していません。

4

2 に答える 2

5

ダイアログ内でビューを探す必要があります。

 ListView toneList = (ListView)dialog.findViewById(R.id.list);

:)

于 2011-10-20T12:43:47.883 に答える
0

ダイアログレイアウトで。を検索していませんtoneList。代わりに次を試してください。

ListView toneList = (ListView)dialog.findViewById(R.id.list);
于 2011-10-20T12:45:57.460 に答える