小编luc*_*olo的帖子

Android - SimpleCursorAdapter.ViewBinder - 设置背景颜色

我从数据库中检索我的游泳表现.我想根据他的价值改变一个字段的背景颜色.例如,如果我游泳4圈我想要彩色背景.我尝试这个代码正确设置背景但文本消失.

        String[] columns = new String[] { "swimm_pos", "swimm_date","swimm_lap", "swimm_stroke", "swimm_time", "swimm_media", "swimm_efficiency", "swimm_note" };
        int[] to = new int[] { R.id.row_counter, R.id.swimm_date, R.id.swimm_lap, R.id.swimm_stroke, R.id.swimm_time, R.id.swimm_medialap, R.id.swimm_efficiency, R.id.swimm_note};

        SimpleCursorAdapter adapter = new SimpleCursorAdapter(
            this, 
            R.layout.contacto_list_item, 
            cursor, 
            columns, 
            to);

        adapter.setViewBinder(new SimpleCursorAdapter.ViewBinder() {
            public boolean setViewValue(View view, Cursor cursor, int columnIndex) {
              if (view.getId() == R.id.swimm_lap)
                { 
                  int color = cursor.getInt(columnIndex);
                  String s = String.valueOf(color);
                  if (s.equals("4")) {
                  TextView tv = (TextView)view;
                  tv.setBackgroundColor(0xFF558866);}
                 return true;

            }
              return false;}

        });
Run Code Online (Sandbox Code Playgroud)

并且当圈数等于另一场的4设置背景颜色时也是可能的,例如在我的代码中:R.id.swimm_pos?谢谢.

sqlite android

5
推荐指数
1
解决办法
3704
查看次数

标签 统计

android ×1

sqlite ×1