【发布时间】:2019-07-01 16:15:15
【问题描述】:
为什么我的微调器在滚动时会跳动?我只是在做以下事情:
ArrayAdapter<String> adapter = new ArrayAdapter<String>(v.getContext(), layout, textViewId, new ArrayList<String>());
adapter.setDropDownViewResource(layoutDropdown);
adapter.addAll(<DATA>);
spinner.setAdapter(adapter);
spinner.setOnItemSelectedListener(listener);
只要下拉菜单很小,一切正常,但如果它变大且可滚动,我看到它在滚动时会跳来跳去。为什么?
我不会在滚动时更改选择或数据,所以我很惊讶会在如此简单的设置中发生这种情况。任何想法如何解决这个问题?
【问题讨论】:
-
你能发布你的适配器吗?
-
适配器代码很简单,已经添加到我的问题中了。
-
你有后台进程吗?您是否在不同的设备/不同的操作系统版本中发现了不同的行为?你在使用 support appcompat 库吗?
-
没有。我对长列表使用对话框。可悲的是,我无法在一个小项目中重现这个问题......
-
我有同样的问题,在另一个项目中,具有相同列表的相同代码运行良好,没有任何故障,而在另一个项目中,它在滚动时会跳转。两者都使用相同的适配器,相同的微调器,相同的布局。我能想到的唯一区别是我在故障项目中使用 androidX 。你们都在用 AndroidX 吗?
标签: android spinner android-arrayadapter