Markieren und halten Sie markiert das ausgewählte Element im Listview-Steuerelement

Ich habe eine listview füllt die Daten aus dem cursor. Die listview hat ein customadapter. Ich möchten, markieren Sie das ausgewählte Element in der listview

public class BillOfSaleActivity extends Activity {

    ListView lv1;
    CustomAdapter listAdapter;

    DbHandler dbHandler;
    Cursor c;

    TextView salesman;
    TextView customer;
    TextView TC;

    String userName;
    String custName;

    Float TotalCost = 0f;


    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_bos_main);

        Intent i = getIntent();
        userName = i.getStringExtra("userName");
        custName = i.getStringExtra("custName");

        salesman = (TextView) findViewById(R.id.tv_bosSalesman);
        customer = (TextView) findViewById(R.id.tv_boscust);
        TC = (TextView) findViewById(R.id.textView_bos_total);

        salesman.setText(userName);
        customer.setText(custName);

        dbHandler = new DbHandler(getApplicationContext());
        c = dbHandler.getBosList();

        if (c != null) {
            if (c.moveToFirst())
                do {
                    Float qty = Float.parseFloat(c.getString(4));
                    Float price = Float.parseFloat(c.getString(5)) * qty;
                    TotalCost = TotalCost + price;
                } while (c.moveToNext());
        }

        c.moveToFirst();
        lv1 = (ListView) findViewById(R.id.listView_bos);
        lv1.setChoiceMode(ListView.CHOICE_MODE_SINGLE);
        lv1.setSelector(R.drawable.list_selector);

        //String []from = new String []
        //{DbHandler.Bos_List_col5,DbHandler.Bos_List_col6};
        listAdapter = new CustomAdapter(getApplicationContext(), c);
        lv1.setAdapter(listAdapter);

        TC.setText("$" + TotalCost);

        lv1.setOnItemClickListener(new OnItemClickListener() {

            @Override
            public void onItemClick(AdapterView<?> arg0, View view, int position,
                    long arg3) {
                view.getFocusables(position);               
                view.setSelected(true);                 
            }
        });
    }

    public class CustomAdapter extends BaseAdapter {
        Cursor cursor;
        Context context;

        public CustomAdapter(Context cont, Cursor c) {

            this.cursor = c;
            this.context = cont;
        }

        @Override
        public int getCount() {
            //TODO Auto-generated method stub
            return c.getCount();
        }

        @Override
        public Object getItem(int arg0) {
            //TODO Auto-generated method stub
            return arg0;
        }

        @Override
        public long getItemId(int arg0) {
            //TODO Auto-generated method stub
            return arg0;
        }

        @Override
        public View getView(int position, View view, ViewGroup arg2) {

            Log.i("dhiraj", "In getView");

            LayoutInflater inflater = (LayoutInflater) context
                    .getSystemService(Context.LAYOUT_INFLATER_SERVICE);
            view = inflater.inflate(R.layout.activity_bos_list, null);

            cursor.moveToPosition(position);

            TextView textView1 = (TextView) view
                    .findViewById(R.id.textView1_bos);
            TextView textView2 = (TextView) view
                    .findViewById(R.id.textView2_bos);
            TextView textView3 = (TextView) view
                    .findViewById(R.id.textView3_bos);
            TextView textView4 = (TextView) view
                    .findViewById(R.id.textView4_bos);

            textView1.setText(cursor.getString(3));
            textView2.setText(cursor.getString(2));
            textView3.setText(cursor.getString(4) + " x  $"
                    + cursor.getString(5));

            Float qty = Float.parseFloat(cursor.getString(4));
            Float price = Float.parseFloat(cursor.getString(5)) * qty;

            textView4.setText("$ " + price);

            return view;
        }

    }
}

Layout ich benutze, ist... dies ist das Haupt-layout.

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >

    <LinearLayout
        android:id="@+id/linz"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignParentRight="true"
        android:layout_alignParentTop="true"
        android:weightSum="2" >

        <TextView
            android:id="@+id/tv_bosSalesman"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:paddingLeft="20dp"
            android:text="Salesman"
            android:textAppearance="?android:attr/textAppearanceMedium"
            android:textColor="@color/red" />

        <TextView
            android:id="@+id/tv_boscust"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:gravity="center"
            android:text="Customer"
            android:textAppearance="?android:attr/textAppearanceMedium"
            android:textColor="@color/lightBlue" />
    </LinearLayout>

    <TextView
        android:id="@+id/tv_bos_header"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_below="@+id/linz"
        android:background="@android:color/darker_gray"
        android:gravity="center"
        android:text="Nota de Venta"
        android:textAppearance="?android:attr/textAppearanceLarge" />

    <LinearLayout
        android:id="@+id/lin"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_below="@+id/tv_bos_header"
        android:weightSum="4" >

        <TextView
            android:id="@+id/textView1"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:gravity="center"
            android:text="Cant"
            android:textAppearance="?android:attr/textAppearanceSmall" />

        <TextView
            android:id="@+id/textView2"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:gravity="center"
            android:text="Cod"
            android:textAppearance="?android:attr/textAppearanceSmall" />

        <TextView
            android:id="@+id/textView3"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:gravity="center"
            android:text="Nombre"
            android:textAppearance="?android:attr/textAppearanceSmall" />

        <TextView
            android:id="@+id/textView4"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:gravity="center"
            android:text="Total"
            android:textAppearance="?android:attr/textAppearanceSmall" />
    </LinearLayout>

    <ListView
        android:id="@+id/listView_bos"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_above="@+id/linz12"
        android:layout_below="@+id/lin"
        android:layout_marginLeft="16dp"
        android:layout_marginRight="16dp"
        android:dividerHeight="1dp"
        android:drawSelectorOnTop="true" />

    <LinearLayout
        android:id="@+id/linz234"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_alignParentLeft="true"
        android:weightSum="3" >

        <Button
            android:id="@+id/button_bos_eliminar"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="Eliminar"
            android:textColorHint="@color/red" />

        <Button
            android:id="@+id/button_bos_agregar"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="Agregar"
            android:textColorHint="@color/green" />

        <Button
            android:id="@+id/button_bos_finalizar"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="Finalizar"
            android:textColorHint="@color/blue" />
    </LinearLayout>

    <LinearLayout
        android:id="@+id/linz12"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_above="@+id/linz234"
        android:layout_alignParentLeft="true"
        android:layout_marginLeft="16dp"
        android:layout_marginRight="16dp"
        android:orientation="vertical" >

        <TextView
            android:id="@+id/textView_bos_total"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:gravity="right"
            android:text="Large Text"
            android:textAppearance="?android:attr/textAppearanceLarge" />
    </LinearLayout>

</RelativeLayout>

Das andere layout enthält 4 Textfelder, die verwendet wird, für die Listview.

Nun will ich hervorheben, die gedrückt item in der Listview. Wie kann ich erreichen, dass. Ich habe versucht mit der selector-aber kein Effekt. Ich will, dass ein Element markiert ist, bis zum nächsten Element ausgewählt ist .

Schreibe einen Kommentar