android - 是否可以根据列表中的数据在 Android ListView 项目上设置项目/ View 样式?

标签 android listview

我有一个从 sqlite 数据库填充的列表,数据值范围从 -1 到 1。有什么方法可以将负项的背景颜色设置为红色,将正项的背景颜色设置为绿色?通过在项目 View 中添加绿色向上箭头表示正值和红色向下箭头图像表示负值,可以产生类似的效果。另一个例子可能是一个待办事项列表,其中的项目按优先级值进行颜色编码。在 ios 中,这将发生在 cellforrowat indexpath 中,而在 windows phone/silverlight 中,它将通过将依赖属性绑定(bind)到数据来完成。这可以用Android实现吗?

最佳答案

像这样尝试......在 getView 方法中

   @Override
public View getView(int position, View convertView, ViewGroup parent) {
    LayoutInflater inflater = (LayoutInflater) context
            .getSystemService(Context.LAYOUT_INFLATER_SERVICE);
    View rowView = inflater.inflate(R.layout.rowlayout, parent, false);
    TextView textView = (TextView) rowView.findViewById(R.id.label);
     ImageView imageview= (ImageView) rowView.findViewById(R.id.img);
    textView.setText(values[position]);
    String s = values[position];
    if (s.startsWith("-")) {
        imageView.setImageResource(R.drawable.uparrow);
   //or set background colour of those views here..
    } else {
        imageView.setImageResource(R.drawable.downarrow);
    }


    return rowView;
}

关于android - 是否可以根据列表中的数据在 Android ListView 项目上设置项目/ View 样式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10151519/

相关文章:

android listview onItemClickListener 失败

php - 在 list 中声明自定义 URL 架构导致在完整的操作对话框中重复应用

ios - 使用 Xamarin.Forms 更新 ListView 文本绑定(bind)会导致 iOS 上闪烁

java - ArrayAdapter 删除带有按钮的项目

android - 未知包装类型 aar

android - ListView 中的项目看起来不像我的项目布局

ListView中的Android圆角

android - WifiP2pManager createGroup 和 removeGroup 失败并显示 BUSY 状态

java - 启动 fragment 并滚动时键盘打开

android - 通过形状资源文件设置圆角的 ConstraintLayout 不起作用