gpt4 book ai didi

android - 在每个 ListView 行上设置不同的颜色

转载 作者:行者123 更新时间:2023-12-01 08:36:50 25 4
gpt4 key购买 nike

我看过相关的答案,但我不知道哪一个适合我。我有一个listView,每一行都有一个textview。我想给定一些条件,每一行得到不同的颜色。(想象一下我从数据库中获取数据,并且给定我得到的值,我希望将文本设置为不同的颜色)我的代码如下所示:

public class TrailsConditionScreen extends ListActivity {
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
seeTrails();
}
private void seeTrails() {
String[] help=new String[] {"foo","bar"};
ArrayAdapter<String> adapter=new ArrayAdapter<String>(this,R.layout.row,R.id.text1,help);
setListAdapter(adapter);
}

}到目前为止,这段代码只是将它们打印在列表中。

现在我想在从数据库中检索值时,给定我在每一行上设置不同颜色的值。假设我的代码在读取第一行时从我想要的表中检索数据,假设数字在 ListView 的第一行设置了适当的颜色。然后转到数据库的第二个,为列表的第二行设置颜色等等..我已经成功地实现了从数据库的读取,但我不知道如何在特定行上设置颜色。在伪代码中它看起来像这样。

 for i=0 to number of lines in db{
read_data();
if key_value=0 then color_of_line(i)=red;
else color_of_line_i)=green;
}

对此有什么帮助吗?

最佳答案

您必须创建一个自定义适配器来处理此问题,而不是使用 ArrayAdapter。扩展 ArrayAdapter 并覆盖 getView 方法。在 getView 方法中,您可以根据条件更改 textView.setTextColor 上的文本颜色。

要编写自定义适配器,请检查 tutorial这里(6.教程:实现你自己的适配器)。此示例未使用持有者模式,但您应该使用。

关于android - 在每个 ListView 行上设置不同的颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8838178/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com