如何更改某个 listView 位置的文本颜色?
Posted
技术标签:
【中文标题】如何更改某个 listView 位置的文本颜色?【英文标题】:How to change text color in a certain listView position? 【发布时间】:2021-01-02 07:56:00 【问题描述】:我有列表视图。当我滚动列表时,列表中某个位置的单元格会改变颜色。如何让这个单元格中的文字颜色也发生变化?
我更改单元格颜色的代码部分:
@Override
public void onScroll(final AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount)
for (int i = 0; i < view.getChildCount(); i++)
View childView = view.getChildAt(i);
if (i == 1)
childView.setBackgroundResource(R.drawable.selected_color);
else
childView.setBackgroundResource(R.drawable.no_select_color);
【问题讨论】:
【参考方案1】:在childView
中查找您的TextView
,将其转换为TextView
,然后使用setTextColor
方法
一些在线示例:
((TextView) childView.findViewById(R.id.text_view_id)).setTextColor(i==1 ? Color.RED : Color.GREEN);
或者,如果您的 childView
是 TextView
,那么您可以使用:
((TextView) childView).setTextColor(i==1 ? Color.RED : Color.GREEN);
【讨论】:
谢谢。我听从了你的建议,这样做了: View childView = view.getChildAt(i); ` if (i == 1) childView.setBackgroundResource(R.drawable.selected_color); ((TextView) childView.findViewById(R.id.textRow)).setTextColor(Color.RED); else childView.setBackgroundResource(R.drawable.no_select_color);((TextView) childView.findViewById(R.id.textRow)).setTextColor(Color.RED); `,它的工作原理。以上是关于如何更改某个 listView 位置的文本颜色?的主要内容,如果未能解决你的问题,请参考以下文章
Android如何在每个listview列表项上添加图标并更改文本颜色、背景颜色
在 searchview 中键入时如何更改 listview-cursoradapter 中搜索文本的背景颜色?