我有一个适合视口的屏幕,因此默认情况下不显示滚动条。
它有一些 TextView 元素、一个 EditText 和一个位于 EditText 下方的 CheckBox。我的目标是在 EditText 控件处于焦点时滚动并显示 CheckBox 元素。当 EditText 成为焦点时,屏幕变得可滚动,因为我为活动设置了“adjustResize”。
现在这里是试图滚动的代码:
mEditTextView.setOnFocusChangeListener(new View.OnFocusChangeListener() {
@Override
public void onFocusChange(View v, boolean hasFocus) {
final ScrollView mScrollView = (ScrollView) findViewById(R.id.scrollView1);
if (hasFocus){
if(mScrollView != null) {
mScrollView.post(new Runnable() {
@Override
public void run() {
mScrollView.fullScroll(ScrollView.FOCUS_DOWN);
}
});
}
}
}
这不会滚动到底部。它只是将焦点放在软键盘上,复选框隐藏在它后面。
谁能告诉我这里有什么问题?
PS:我的猜测是即使在“adjustResize”之后,Android 仍然认为没有滚动空间,因此不会滚动。这可能是这种情况吗?