1

次のコードを使用して、定義済みの文字列配列を使用して ListView にデータを入力しようとしています。

String[] schedule_names = getResources().getStringArray(R.array.test_schedules);

// Populate the ListView using the array of schedule names
ArrayList<String> als = new ArrayList<String>(Arrays.asList(schedule_names));
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, R.id.listView, als);

adapter.add("Test");

ListView listView = (ListView) findViewById(R.id.listView);
listView.setAdapter(adapter);

ただし、コメントアウトしない限り、強制的に閉じますlistView.setAdapter(adapter);(これは明らかに、ListView がまったく入力されていないことを意味します)。の理由のようですNullPointerException

どうしてこれなの?

4

1 に答える 1

1

この行は間違っています...

ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, R.id.listView, als);

...コンストラクタの 2 番目のパラメータは yourListViewではなく、. を含むレイアウトにする必要がありますTextView

で置き換えR.id.listViewてみてくださいandroid.R.layout.simple_list_item_1

于 2012-10-30T22:49:41.780 に答える