如何改变listview中checkbox的位置

在android程序中,我想改变listview上checkbox的位置

ListView lv = (ListView) findViewById(com.inomera.sanalmarket.main.R.id.listView1);

    ListAdapter adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_checked , ShoppingListDataManager.getInstance().shoppingNotes);

    lv.setAdapter(adapter);

这是ListView相关的代码,如何找到simple_list_item_checked这项,而且改变它的位置呢?

源代码是这个,你可以照着这个做一个layout然后替换就行。

<CheckedTextView xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@android:id/text1"
    android:layout_width="fill_parent"
    android:layout_height="?android:attr/listPreferredItemHeight"
    android:textAppearance="?android:attr/textAppearanceLarge"
    android:gravity="center_vertical"
    android:checkMark="?android:attr/textCheckMark"
    android:paddingLeft="6dip"
    android:paddingRight="6dip"
/>

去源码里看看 R.layout.simple_list_item_checked 这个布局是如何写的,找到checkbox那个ID应该就可以了,至于以改变位置,也许你自己写布局更方便。

自己继承一个BaseAdapter,在getView的时候随便你怎么玩都可以。但listview里面checkbox的选项得用一个数组或者集合记录下来。否则会出错。