列表,读取和未读状态可绘制添加到列表视图

时间:2014-06-10 13:15:28

标签: android listview android-listview views baseadapter

能够显示包含数据的列表但是要读取和未读取我需要在列表项中添加一个可绘制图标。能够从源获取数据并在基础适配器的帮助下根据状态标志获取读取和未读取能够将图标添加到列表视图中,然后当我滚动列表时数据自动更改请提供一些帮助。

4 个答案:

答案 0 :(得分:0)

您应该在列表getView的{​​{1}}方法中对项目进行特定修饰。然后只需通过adapter刷新它,以便adapter.notifyDataSetChanged根据适配器数据刷新其视图。

答案 1 :(得分:0)

为什么不根据读取状态设置包含读取图标的View的可见状态。您应该在适配器的getView(int position, View convertView, ViewGroup parent)方法中进行设置。

http://developer.android.com/reference/android/view/View.html#setVisibility(int)

答案 2 :(得分:0)

此实现要求具有单独的Read Item列表。在这种情况下,所有项目都将是未读取的readList ="" ;

接下来在适配器onClick方法中,您将获得所单击视图的位置。根据此位置,您必须获取用于填充列表视图的元素的ID。该元素可以具有以下结构:[ID,Name,URL,Image]。在将相应的ID获取到listView中的tapped位置时,将其保存为readList as readList =" 12 //"。

在下一次点击列表视图时,获取元素的相应ID,检查读取列表中是否已存在该ID。如果存在,则不执行任何操作。或者,如果readList中不存在,则将其添加到readList,以便readList =" 12 // 34 //"

现在您已设法获取读取元素的ID,接下来需要在列表视图中将它们标记为已读。为此,在适配器的grtView方法中,获取与Positon对应的ID。然后检查读取列表中是否存在此ID。

希望这有帮助!

答案 3 :(得分:0)

为此,您需要根据状态放置已读和未读图标,以切换已读和未读图标。

in the adapter class do like this:

 if (getAllRequestsAL.get(position).getAType().equalsIgnoreCase("1")) {
    holder.request_type_Image.setImageResource(R.drawable.one);
    } else {
    holder.request_type_Image.setImageResource(R.drawable.two);
    }