繁体   English   中英

ArrayAdapter getView位置不正确

[英]ArrayAdapter getView position is not true

对于我的ListView,我有这个ArrayAdapter

ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
            android.R.layout.simple_list_item_1, android.R.id.text1, uas) {
        @Override
        public View getView(int position, View convertView, ViewGroup parent) {
            View item = super.getView(position, convertView, parent);

            if(uas.size() > 0 && tinydb.getInt("selectedUA", 0) == position) {
                item.setBackgroundColor(Color.GREEN);
            }

            return item;
        }
    };

让我们说selectedUA是3,所以它将第三个指数设为绿色。 问题是第一个索引总是变色。 似乎位置值或某事有bug。 谁能帮我?

如果条件为false,请尝试重置其他行的默认颜色:

 if(uas.size() > 0 && tinydb.getInt("selectedUA", 0) == position) {
       item.setBackgroundColor(Color.GREEN);
 } else {
       // e.g.
       item.setBackgroundColor(Color.RED);
 }

暂无
暂无

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

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