【发布时间】:2020-10-15 16:40:57
【问题描述】:
Android ScrollView 布局只能包含一个子元素,因此在放入 ScrollView 元素之前,必须将多个子元素包裹在另一个布局元素中。
我有一个主 FrameView 包装一个 ScrollView 包装另一个 FrameView,里面有许多 EditText 元素。
布局看起来像这样:
<FrameLayout>
<ScrollView>
<FrameLayout>
</EditText>
</EditText>
</FrameLayout>
</ScrollView>
</FrameLayout>
这一切都是以编程方式完成的,而且效果很好。当软键盘出现时,最外层的框架布局和滚动视图被调整大小,内容在缩小的区域内完美滚动。当软键盘弹出时,它甚至会滚动到选定的编辑文本元素。
问题是,即使选定的编辑文本在软键盘上方可见,每次按下键时滚动视图都会自动滚动到顶部。我必须再次向下滚动到重点编辑文本,但它会随着软键盘的每次击键再次滚动到顶部。
我只有三个测试设备,一个牛轧糖和两个棒棒糖,这个问题只出现在牛轧糖上。
是什么导致了这种奇怪的行为?
【问题讨论】:
标签: android android-layout android-edittext scrollview android-softkeyboard