【发布时间】:2013-04-25 01:37:20
【问题描述】:
我在一个片段中有一份订单列表。在第二个片段中,我显示订单的详细信息,并使用第三个片段显示更改订单状态的按钮。
在列表中,每个订单都以背景颜色显示,指示其状态,例如绿色表示已完成交货。
在横向模式下,详细信息和列表都会显示。在纵向模式下,我使用两个单独的活动。
这一切都很好,直到我更改订单状态。我找不到更新列表的方法。
据我了解,需要发生的是适配器需要调用其 notifyDateChanged() 方法。我试过直接从处理按钮单击的方法中调用它,我试过一个异步任务,我试过一个处理程序。我的调试方法显示调用正在发生,但列表没有更新。
我可能正在做一些完全愚蠢的事情,但我已经检查了两次和三次。我怀疑有一些我不明白的关键要素。我希望其他人会告诉我我错过了什么。
我发布了一些代码,但显然是错误的。不确定要发布什么代码,因为我认为这更像是一个概念问题而不是编码问题。
【问题讨论】:
-
如果
adapter不是 UI 线程上的变量,这将不起作用。 -
适配器是一个从 SimpleCursorAdapter 扩展而来的 OrderListFragment。适配器用于将我的数据从光标链接到 ListView。
-
我已经尝试过处理程序和异步任务,但似乎都不起作用。问题的一部分可能是单击的按钮与显示列表的片段位于不同的片段中。
-
在该适配器的这个片段中存储一个引用,或者您需要使您的适配器
public static并调用YourActivity.adapter -
我会试试的,石鸟
标签: android onclick adapter fragment notifydatasetchanged