Код с изменениями текстового представления.ArrayList является общим, но вы должны использовать конструкторы ArrayList для добавления, вставки и удаления для работы.
public class ListViewLearn extends Activity {
public Button btnAddData;
public ListView listShow;
public listRayAdapter adapter;
public ArrayList<Integer> tmpStrRay;
public Resources mainRes;
public void onCreate(Bundle savedInstanceState) {
setContentView(R.layout.mainlistlayout);
tmpStrRay = new ArrayList<Integer>();
tmpStrRay.add(1);
tmpStrRay.add(2);
tmpStrRay.add(3);
mainRes= getApplicationContext().getResources();
adapter = new listRayAdapter(getApplicationContext(),R.layout.listitem, tmpStrRay);
btnAddData = (Button) findViewById(R.id.btnAddData);
btnAddData.setOnClickListener(clickit);
listShow= (ListView) findViewById(R.id.listShow);
listShow.setAdapter(adapter);
super.onCreate(savedInstanceState);
}
final OnClickListener clickit = new OnClickListener(){
@Override
public void onClick(View v) {
for (int xx=4; xx<=50; xx++){
adapter.add(new Integer(xx));
}
}};
class listRayAdapter extends ArrayAdapter<Integer>
{
private ArrayList<Integer> items;
Bitmap tmpImg;
public listRayAdapter(Context context, int textVwId, ArrayList<Integer> txtRay)
{
super(context,textVwId,txtRay);
this.items = txtRay;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View newv= convertView;
if (newv == null) {
LayoutInflater vi = (LayoutInflater)getSystemService(Context.LAYOUT_INFLATER_SERVICE);
newv = vi.inflate(R.layout.listitem, null);
}
if ((position%2)==0){
tmpImg = BitmapFactory.decodeResource(mainRes, R.drawable.even);
}else{
tmpImg = BitmapFactory.decodeResource(mainRes, R.drawable.odd);
}
ImageView img = (ImageView) newv.findViewById(R.id.img);
img.setImageBitmap(tmpImg);
TextView tt= (TextView) newv.findViewById(R.id.listedItem);
Integer tmpInt = new Integer(items.get(position));
tt.setText(tmpInt.toString());
return newv;
}
}
}