android更改listview图像源基于状态

时间:2015-10-12 20:25:48

标签: android listview simplecursoradapter android-cursor android-viewbinder

尝试更改listView图像项源取决于字段,例如:if(status === 1)显示红色图像,否则显示绿色图像。我尝试了一个带有简单光标适配器的视图绑定器,但是这样做也没有显示任何错误

private class MyViewBinder implements SimpleCursorAdapter.ViewBinder {

    public boolean setViewValue(View view, Cursor cursor, int columnIndex) {

        int viewId = view.getId();
        int status = cursor.getInt(cursor.getColumnIndex(LoanDb.KEY_STATUS));
        ImageView noteTypeIcon = (ImageView) view;

        if(viewId == R.id.status_img) {

            switch (status) {
                case 0:
                    noteTypeIcon.setImageResource(R.drawable.red_dot);
                    break;
                case 1:
                    noteTypeIcon.setImageResource(R.drawable.green_dot);
                    break;
            }
            return true;
        }else
        {
            return false;
        }
    }

}

这个类位于Main Activity中作为子类,无法理解为什么这不起作用。

0 个答案:

没有答案