How to get a column value of item in ListView when I use CHOICE_MODE_MULTIPLE mode and ArrayAdapter<String>?
<p>I hope to use <code>String aa=c.getString(c.getColumnIndex("address"))</code> to get the column value of a item in the function <code>private void SetSelectedAndTotal</code>.<br>
but the app crash, how can I do? Thanks!</p>

<pre><code>private ListView lv; 
private TextView selectedAndTotal;

private void InitListView() {
    List&lt;String&gt; msgList = getSMS();
    ArrayAdapter&lt;String&gt; adapter2 = new ArrayAdapter&lt;String&gt;(this,
            android.R.layout.simple_list_item_multiple_choice, msgList);
    lv.setAdapter(adapter2);
    lv.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE);
    lv.setOnItemClickListener(new OnItemClickListener() {
        @Override
        public void onItemClick(AdapterView&lt;?&gt; arg0, View arg1, int arg2,
                long arg3) {
            SetSelectedAndTotal(arg2);
        }
    });
}

private void SetSelectedAndTotal(int arg2){     
    Cursor c = (Cursor) lv.getItemAtPosition(arg2);
    String aa=c.getString(c.getColumnIndex("address"));
    selectedAndTotal.setText(aa);       
}


public List&lt;String&gt; getSMS() {
    List&lt;String&gt; sms = new ArrayList&lt;String&gt;();
    Uri uriSMSURI = Uri.parse("content://sms/inbox");
    Cursor cur = getContentResolver().query(uriSMSURI, null, null, null,
            null);

    while (cur.moveToNext()) {
        String address = cur.getString(cur.getColumnIndex("address"));
        String body = cur.getString(cur.getColumnIndexOrThrow("body"));
        sms.add("Number: " + address + " .Message: " + body);

    }
    return sms;
}
</code></pre>
