android - ScrollView 内的 ScrollView

标签 android android-layout android-scrollview

在你说之前 “Google 说不要这样做” 请阅读我的所有问题!!

布局:

ScrollView -> RelativeLayout -> ScrollView -> RelativeLayout

第一个 ScrollView 是必需的,因为表单条目会拉起某些手机上的软键盘,这会隐藏其余内容。将 ScrollView 作为最外层的容器允许用户使用当前的软键盘进行滚动。

层次结构中较低的第二个 ScrollView 是仍然可滚动的 ListView。

我完全理解为什么不鼓励开发人员在另一个 ScrollView 中包含一个 ScrollView。我需要想办法让两者一起工作。我尝试在触摸到最里面的 ScrollView 时禁用最外面的 ScrollView,但这没有帮助。

有没有办法解决这个问题,让两者都能工作(当然不是同时)?在内容页面再次更改之前,我什至不介意禁用最外层的 ScrollView。必须有办法..

最佳答案

第 1 步:删除 ScrollView

第 2 步:通过 addHeaderView() 使第一个 RelativeLayout 成为 ListView 中的标题。

第 3 步:通过 addFooterView() 使第二个 RelativeLayout 成为 ListView 中的页脚。

最终效果是整个内容都是可滚动的,没有嵌套的可滚​​动项。

关于android - ScrollView 内的 ScrollView ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12517063/

相关文章:

android - Material 设计中缺少 ActionBar

android - EditText光标位置

android - 如何在 Webview 中向下滚动时隐藏操作栏/工具栏

android - 由于依赖性冲突,无法完成安装。开发工具包 23.0

android - UtteranceProgressListener 未在 21 以上的 api 级别中被调用

Java/Android : Read and parse . 来自 url 的 txt 文件

android - Cardview ScrollX/ScrollY在ScrollView中为0

java - 当方向改变时将对象从一个 fragment 传递到另一个 fragment

android - 数据绑定(bind)不适用于选项卡项文本属性

android - ViewPager 内的 TabLayout 禁止滑动