【发布时间】:2020-09-29 09:24:16
【问题描述】:
我有一个带有 Spinner 的活动(带有他自己的适配器)和另一个适配器,它使用它的 list 管理回收器视图。我正在尝试实现以下逻辑:当回收器列表为空时,应该启用微调器,否则应该禁用它,直到列表再次为空:
sGames.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
if (pokemonCardsGridAdapter.getItemCount() == 0) {
v.performClick();
v.setEnabled(true);
} else {
v.setEnabled(false);
Toast.makeText(PokemonTeambuilderEditorActivity.this, "The list is full", Toast.LENGTH_SHORT).show();
}
return false;
}
});
但是,这仅在第一次有效,一旦微调器被禁用,它就再也不会接收到任何触摸事件。我该如何解决这个问题?
【问题讨论】:
-
如果它被禁用,您将不会有触摸事件。您的清单是如何填写/更新的?
-
我有一个浮动按钮,每次按下它都会添加一个新元素
-
您的列表有适配器吗?您应该发布您的代码,以便我们提供更多帮助。逻辑是更新适配器中的微调器。而你的浮动按钮调用 adapter.notifyDataSetChanged();
标签: android spinner android-spinner touch-event ontouchlistener