2014-03-26 41 views
0

我擁有名爲CAdapter的自定義遊標適配器,具有以下代碼行。在列表視圖中訪問arow的單個元素

public class CAdapter extends CursorAdapter { 

    public CAdapter(Context context, Cursor c) { 
     super(context, c); 
    } 

    @Override 
    public void bindView(View view, Context context, Cursor cursor) { 

     TextView titleTV = (TextView) view.findViewById(R.id.listTitle); 
     titleTV.setText("#"+cursor.getString(cursor.getColumnIndex(cursor.getColumnName(1)))+" "+ 
       cursor.getString(cursor.getColumnIndex(cursor.getColumnName(2)))); 
    } 

    @Override 
    public View newView(Context context, Cursor cursor, ViewGroup parent) { 

     LayoutInflater inflater = LayoutInflater.from(parent.getContext()); 
     View retView = inflater.inflate(R.layout.row_item_layout, parent, false); 
     return retView; 
    } 

} 

的row_item_layout.xml文件包含

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

    <TextView 
     android:id="@+id/listTitle" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_alignParentTop="true" 
     android:layout_marginTop="2dp" 
     android:focusable="false" 
     android:gravity="center_vertical" 
     android:text="Example application" 
     android:textSize="26sp" /> 

</RelativeLayout> 

我有一個活動FavListActivity其中包含列表視圖。我的問題是如何訪問列表視圖中的文本視圖,以便更改該文本視圖中文本的顏色。我必須在創建活動時運行該代碼(而不是在onItemClickListener中)。如果需要,請詢問更多信息。

回答

0

我不知道你用什麼機制來確定你想要改變的列表中的哪一行。這裏有幾個選項:

 TextView titleTextView = (TextView)listView.getChildAt(0).findViewById(findViewById(R.id.listTitle); 
     //do something with the TextView 

或者如果你在點擊監聽器,也許

listView.setOnItemClickListener(new OnItemClickListener() { 

    @Override 
    public void onItemClick(AdapterView<?> parent, View view, int position, long id) { 

     TextView titleTextView = (TextView) view.findViewById(R.id.listTitle); 
     //do something with the TextView 

    } 
}); 
+0

我將在FavListActivity寫什麼碼?我沒有得到你的答案。 –

+0

我已經更新了我的答案。 – RonU

+0

'TextView titleTextView =(TextView)listView.getChildAt(0).findViewById(R.id.listTitle);'不起作用 –