HTTP サーバーから JSON をフェッチし、リストビューを動的に作成します。
for (int i = 0; i < jsonArray.length(); i++) {
...
...
String[] lv_arr = new String[locationNames.size()];
lv_arr = locationNames.toArray(lv_arr);
modeList.setAdapter(new ArrayAdapter<String>(NeighborhoodSelectActivity.this, android.R.layout.simple_list_item_1, lv_arr));
modeList.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
LocationDetails l = nlMap.get(parent.getItemAtPosition(position).toString());
Intent lIntent = new Intent(NeighborhoodSelectActivity.this, LocationSelectActivity.class);
lIntent.putExtra("location", l);
startActivity(lIntent);
}
});
locationList.add(modeList);
}
LinearLayout lay = (LinearLayout) findViewById(R.id.neighListLayout);
for(ListView v : locationList) {
lay.addView(v, new ViewGroup.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT));
}
ListViews が LinearLayout に追加されます。ただし、Gingerbread 以下の API では、最後の ListView のみがスクロール可能です。これを修正するにはどうすればよいですか?