Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/192.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在android ListView中区分已读和未读消息?_Android_Android Listview - Fatal编程技术网

如何在android ListView中区分已读和未读消息?

如何在android ListView中区分已读和未读消息?,android,android-listview,Android,Android Listview,SimpleCursorAdapter用于我的代码中。 光标包含字段读取(真/假)。 如果为true,则行应显示为灰色文本颜色,如果为false,则显示为白色。如果像您编写的一样简单,则可以在SimpleCorsorAdapter中使用setViewBinder/setViewValue。下面将显示一个行布局的文本视图,如果光标中的一列包含您感兴趣的值,该行布局将被绘制为红色。如果有更多字段,则需要应用一些小更改。如果设置了自己的值,则返回true;如果Android应该绘制,则返回false:

SimpleCursorAdapter
用于我的代码中。 光标包含字段
读取
(真/假)。

如果为true,则行应显示为灰色文本颜色,如果为false,则显示为白色。

如果像您编写的一样简单,则可以在SimpleCorsorAdapter中使用setViewBinder/setViewValue。下面将显示一个行布局的文本视图,如果光标中的一列包含您感兴趣的值,该行布局将被绘制为红色。如果有更多字段,则需要应用一些小更改。如果设置了自己的值,则返回true;如果Android应该绘制,则返回false:

... create SimpleCursorAdapter
if (simpleCursorAdapter != null) {
  simpleCursorAdapter.setViewBinder(new SimpleCursorAdapter.ViewBinder() {

    @Override
    public boolean setViewValue(View view, Cursor cursor, int columnIndex) {
      TextView textView = (TextView) view;

      long l = cursor.getLong(positionOfReadValue);
      if (l == valueOfRead) {
        textView.setTextColor(Color.RED);
      }

      return false;
    }

  } );

  setListAdapter(simpleCursorAdapter);
}
...

如果像您编写的那样简单,您可以在SimpleCursorAdapter中使用setViewBinder/setViewValue。下面将显示一个行布局的文本视图,如果光标中的一列包含您感兴趣的值,该行布局将被绘制为红色。如果有更多字段,则需要应用一些小更改。如果设置了自己的值,则返回true;如果Android应该绘制,则返回false:

... create SimpleCursorAdapter
if (simpleCursorAdapter != null) {
  simpleCursorAdapter.setViewBinder(new SimpleCursorAdapter.ViewBinder() {

    @Override
    public boolean setViewValue(View view, Cursor cursor, int columnIndex) {
      TextView textView = (TextView) view;

      long l = cursor.getLong(positionOfReadValue);
      if (l == valueOfRead) {
        textView.setTextColor(Color.RED);
      }

      return false;
    }

  } );

  setListAdapter(simpleCursorAdapter);
}
...

谢谢,@hjw。我是否可以对图标使用相同的方法(它将显示项目是否已读取)?或者,使用图标将不会有效?当然,您可以在onCreate中创建一个可绘制视图,将ImageView添加到行布局中,并在光标中的另一个字段具有感兴趣的值时设置可绘制视图。我应该如何更改以下行-
TextView TextView=(TextView)视图,如果我的listview的每一行有两个项目-图标和文本视图?在这里找到-谢谢,@hjw。我是否可以对图标使用相同的方法(它将显示项目是否已读取)?或者,使用图标将不会有效?当然,您可以在onCreate中创建一个可绘制视图,将ImageView添加到行布局中,并在光标中的另一个字段具有感兴趣的值时设置可绘制视图。我应该如何更改以下行-
TextView TextView=(TextView)视图,如果我的listview的每一行有两个项目-图标和文本视图?在这里找到-