繁体   English   中英

android listview改变颜色但失败

[英]android listview change color but fail

我有一个列表视图,列表视图有一些数据,
我希望这些数据有不同的颜色
例如:如果这是第 1 课为蓝色,第 2 课为红色......
所以,我用

name.setTextColor(Color.BLUE);

但它不能改变。
为什么?


这是我的代码:

public class Listening extends AppCompatActivity {
    ArrayList<Listenlist> listenlists = new ArrayList<Listenlist>();
    ListView listview;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.listening);
        listview = (ListView) findViewById(R.id.list);
        seraechsql2();
    }
    public void seraechsql2(){
        View v =null;
        String result = dblisten.executeQuery();

        try{

           TextView name = ((TextView) v.findViewById(R.id.name));
            JSONArray jsonArray = new JSONArray(result);
            length=jsonArray.length();
            for(int i =0; i < jsonArray.length(); i++) 
            {
                JSONObject jsonData = jsonArray.getJSONObject(i);
                String les=jsonData.getString("lesson");
                Listenlist team = new Listenlist("L"+les);
               if(les==.....){//my condition
              name.setTextColor(Color.BLACK);//I try to change it to black but fail
               }
                listenlists.add(team);
                final ListenlistAdapter adapter = new ListenlistAdapter(this, R.layout.listenlist, listenlists);
                listview.setAdapter(adapter);
                listview.setTextFilterEnabled(true);
                listview.setSelector(R.drawable.green);
            }
        }
        catch(Exception e){}
    }
}

谢谢

如果您使用列表视图,则必须使用您自己的自定义创建单独的自定义 layout.simple_list_item_1,并且您还需要一个 class 来控制此布局(在其中添加数据,创建新元素等)。 它比 RecyclerView 更复杂。

在此处查看更多详细信息: https://www.simplifiedcoding.net/custom-listview-android/

我建议您使用 RecyclerView 列出项目的显示列表。 您可以根据项目 position 更新基于颜色。 参考这个链接 - https://developer.android.com/guide/topics/ui/layout/recyclerview

更多解释 - 更改 ListView 中项目的颜色 - Android

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM