【发布时间】:2017-02-13 18:48:08
【问题描述】:
我有一个使用 CustomAdapter 的 GridView,我有一个数组列表 (size=20)。
当我打电话给adapter.notifyDataSetChanged();
- getView() 被调用的次数超出了应有的次数(我知道对此无能为力)。但是我在 CustomAdapter 类上有一个变量 done==false,我想在 getView() 完成工作后将其更改为 true(在 20 次甚至 50 次之后),
我如何控制getView() 完成后会发生什么?
我想将此变量更改为true。我应该把done=true放在哪里?
*最后一个getView()call 不是必须的position==19
【问题讨论】:
-
Adnroid 文档说:当视图膨胀时,父视图(GridView、ListView...)将应用默认布局参数,除非您使用 inflate(int, android.view.ViewGroup, boolean)指定根视图并防止附加到根。
-
在填充网格时,可能会在 GridView 上重复调用 requestLayout,检查您可以对布局视图执行的优化以避免这些额外的测量和布局传递。
-
你为什么需要这个
done标志?
标签: android listview android-arrayadapter custom-adapter getview