1
  1. 我的Spinner. 我单击一个刷新按钮,该按钮触发一个 API 调用,该调用以Spinner.
  2. 我立即点击 Spinner 打开它。
  3. API 调用在Spinner打开并调用notifiyDataSetChanged()它时结束(我可以保证这一点,我检查了日志,所以数据在那里)。
  4. 不幸的是,微调器不会刷新它的视图。因此,如果我希望刷新后有 6 个项目而不是 5 个,我仍然会看到 5 个。

如果我在不打开 Spinner 的情况下重复测试,并在刷新完成后打开它,我会看到 6 个项目。所以问题出在notifyDataSetChanged()方法上。

4

2 回答 2

2

试试下面的代码。只需添加新的并调用notifyDataSetChanged();.

mSpinnerAdapter.add(object);
mSpinnerAdapter.notifyDataSetChanged();
于 2013-04-29T11:45:46.633 回答
0

您可以禁用微调器,直到刷新过程结束。或者在您的 API 调用结束时显示进程对话框。我认为您无法在旋转器打开时刷新它。

于 2013-04-29T12:08:37.327 回答