在ListActivity中使用setSelection方法更改颜色可以通过以下步骤实现:
#000000
public class MainActivity extends ListActivity {
private ArrayAdapter mAdapter;
private ListView mListView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// 设置数据源
String[] data = {"Item 1", "Item 2", "Item 3"};
mAdapter = new ArrayAdapter<>(this, android.R.layout.simple_list_item_1, data);
setListAdapter(mAdapter);
// 获取ListView并设置item布局
mListView = getListView();
mListView.setChoiceMode(ListView.CHOICE_MODE_SINGLE);
mListView.setAdapter(mAdapter);
// 调用setSelection方法更改颜色
mListView.setSelection(0);
mListView.getChildAt(0).setBackgroundColor(getResources().getColor(R.color.default_text_color));
}
}
在上面的示例中,我们使用ArrayAdapter作为数据适配器,并为ListView设置了CHOICE_MODE_SINGLE模式。然后,我们调用setSelection方法将第一个项设置为选中,并通过getChildAt方法获取对应的View,然后设置其背景颜色为我们在colors.xml中定义的default_text_color颜色。
请注意,此示例假设您已经在res/values文件夹中创建了colors.xml文件,并在其中定义了default_text_color颜色。您可以根据自己的需求进行相应的更改。