java - 从另一个 Activity 更新 Listview 可见 View (行)

标签 java android listview notifydatasetchanged

enter image description here 你好呀。 H 有一个由 MyCustomAdapter 填充的 ListView 。在我的自定义适配器中,我通过 json 从服务器检索数据并将它们保存在 ArrayList<HashMap<String, String>>

MyCustomAdapter 构造函数如下:

public MyCustomAdapter(Activity a, ArrayList<HashMap<String, String>> d){
        mActivity   = a;
        mData       = d;
        mInflater   = (LayoutInflater) mActivity.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
}

在我的 getView 中,我从 mData 检索数据并将它们设置为您可以在图像中看到的标题、描述等 View 。

当用户去编辑 Activity 并在那里编辑一些数据时,我想更新我的 ListView 数据。 怎么才能做到这一点?

在 Google+ 应用程序中,当您阅读帖子并点赞帖子 Activity 时,当您返回所有帖子列表时,该帖子点赞按钮就会更新!我想要这样的东西

感谢您的帮助:)

最佳答案

由于您使用的是ArrayList<HashMap<String, String>>如果不是游标/内容提供者,您的适配器将不会自动收到基础数据更改的通知。

一种方法是使用 Otto ( http://square.github.io/otto/ ) 或任何事件总线来传递事件,以通知您的 Activity 底层数据的某些更改。

您的第一个 Activity 应该订阅数据更新事件,然后在您的第二个 Activity 中您应该将此 Activity 与新数据一起发送

关于java - 从另一个 Activity 更新 Listview 可见 View (行),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25814818/

相关文章:

android - 如何更改 ListView state_focused 和 state_pressed 颜色

listview - 为什么 DataContext 为 ListView 项中的项返回空值?

java - ffmpeg什么时候终止?

java - 具有多个模块的 Maven 包名称

java - ANTLR 提供这些功能吗?

android - 华为Push Kit错误: 907135701: scope list empty

android - 如何更改android中工具栏上关闭搜索按钮的位置并在展开时设置动画?

android - 搜索 ListView 标志的功能 - 无法解析方法“getFilter()”

Android Drop up(?)菜单可能吗?

java - 遍历标签映射并处理它们