如何解决ScrollView中的Android单击视图
我在ScrollView的LinearLayout中有一个包含5个项目的布局。我希望这些项目是可点击的,并且不会干扰滚动。
问题正在滚动。如果向上/向下拖动项目,则不会滚动。如果我在项目之间的边距上上下拖动,它会滚动。
当用户在项目上向上/向下拖动时,如何处理项目的单击事件并允许滚动?
注意:这与有效的布局无关,或者仅与使用RecyclerView有关(这似乎有点过头)。我想知道如何滚动和处理被点击的孩子。
我尝试了单击和触摸侦听器,GestureDetector,onInterceptTouchEvent的各种组合...但是我似乎只能单击或滚动,而不能同时单击。
我遵循了这些教程/答案,但都没有成功:
- Android tutorial on intercepting touch events
- How to vary between child and parent view group touch events
- OnClickListener on scrollView
肯定有一些简单的东西我想念...一些标志或东西吗?
布局:
override fun onCreate(savedInstanceState: Bundle?) {
itemOne.setOnClickListener(this)
itemTwo.setOnClickListener(this)
...
}
override fun onClick(view: View?) {
when (view?.id) {
R.id.itemOne-> ...
R.id.itemTwo -> ...
...
}
}
活动
{{1}}
解决方法
只需删除XML中的scrollView id使其在R文件中不列出,这将使其在侦听器中不可点击
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。