2 baby bonnie Baby_Bonnie 于 2012.12.24 17:08 提问

不能改变ListFragment项目中text的颜色

ListFragment片段中的数据,是从Curor中填充的。我把list背景设置为白色,text也设置为白色。我在布局xml中改变 textColor属性,text的颜色也没有变。以下是我使用的代码,我丢失什么了吗:
ListFragment:

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    String[] from = {DBConstants.COL_FAMILY_NAME};
    int[] to = {android.R.id.text1};

    getLoaderManager().initLoader(FAMILY_LOADER, null, this);
    adapter = new SimpleCursorAdapter(getActivity().getApplicationContext(), R.layout.simple_spinner_drop_down_view, null, from, to, CursorAdapter.FLAG_REGISTER_CONTENT_OBSERVER);
    setListAdapter(adapter);
}


@Override
public void onActivityCreated(Bundle savedInstanceState) {
    super.onActivityCreated(savedInstanceState);

    registerForContextMenu(getListView());

    getListView().setBackgroundResource(android.R.color.white);
    getListView().setCacheColorHint(android.R.color.transparent);
}

list item layout:

<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/spinnerItemText"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:padding="15dip"
    android:textAppearance="?android:attr/textAppearanceLarge"
    android:textColor="#000000" />

2个回答

cytown
cytown   2012.12.24 18:01
已采纳

代码错了吧, 你引用的是android.R.id.text1,但layout里面是android:id="@+id/spinnerItemText"

nana4ever
nana4ever   2012.12.25 09:54

我怀疑text不是白色的,只是没显示出来,因为你引用了错的TextView。
应该把int[] to = {android.R.id.text1};变成int[] to = {R.id.spinnerItemText};

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!