在你说之前"Google说不要这么做“请阅读我所有的问题!!
布局:
ScrollView -> RelativeLayout -> ScrollView -> RelativeLayout
第一个ScrollView是必要的,因为表单条目会在一些手机上拔出软键盘,从而隐藏其余的内容。将ScrollView作为最外层的容器允许用户使用软键盘滚动。
层次结构中较低的第二个ScrollView是仍然可滚动的ListView。
我完全理解为什么devs不愿意在另一个ScrollView中拥有一个ScrollView。我得想办法让这两个人一起工作。当最内部的ScrollView被触摸时,我试着禁用最外层的ScrollView,但这并没有帮助。
有没有办法绕过这两个地方(当然不是在同一时间)?在内容页再次更改之前,我甚至不介意禁用最外层的ScrollView。一定有办法..。
发布于 2012-09-26 17:00:05
答案是以编程的方式拦截,触摸事件形成最外层的滚动视图。我正在使用我在另一个SOF中找到的关于Disabling a ScrollView Programattically的类。
发布于 2012-09-20 16:52:56
步骤1:删除ScrollView。
步骤2:通过RelativeLayout使第一个ListView成为头部。
第3步:通过RelativeLayout使第二个ListView成为您的ListView的页脚。
净效果是,整个事件将是可滚动的,没有嵌套的可滚动项。
发布于 2012-09-20 16:52:40
只有当您将android:layout_height设置为第二个ScrollView的固定值时,它才能工作。最好的方法是根据设备设置大小,因为最好为每个受支持的屏幕大小(在dp上的值为150 dp)创建布局。您应该创建单独的布局:布局-小,布局-正常,布局-大.有关固定大小的优化,请参阅此链接:support.html
https://stackoverflow.com/questions/12517063
复制相似问题