import android.view.*; import android.widget.*; import android.content.*; sclass AndroidList { ListView lv; O onClick; View view() { ret lv; } *(L l) { lv = new ListView(androidActivity()); lv.setAdapter(new MyAdapter(androidActivity (), toStringArray(l))); lv.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView arg0, View arg1, int position, long id) { callF(onClick, position); } }); } class MyAdapter extends ArrayAdapter { public MyAdapter(Context context, String[] strings) { super(context, -1, -1, strings); } @Override public View getView(int position, View convertView, ViewGroup parent) { LinearLayout listLayout = new LinearLayout(getContext ()); listLayout.setLayoutParams(new AbsListView.LayoutParams( AbsListView.LayoutParams.FILL_PARENT, AbsListView.LayoutParams.WRAP_CONTENT)); listLayout.setId(View.generateViewId()); TextView listText = new TextView(getContext()); listText.setId(View.generateViewId()); listLayout.addView(listText); listText.setText(super.getItem(position)); return listLayout; } } }