Android打开软键盘时向上移动整个屏幕?

时间:2012-07-06 12:57:03

标签: android

我只想在用户点击编辑文字时向上移动整个活动屏幕... 我的意思是屏幕会向上和向下移动,我们可以看到软键盘...... 我尝试在我的清单文件中使用android:windowSoftInputMode =“adjustPan | adjustResize”,但它没有任何意义.. 提前谢谢......

1 个答案:

答案 0 :(得分:0)

在xml布局中。使scrollview成为root父级,它将起作用!

尝试此操作以检测键盘是否已启动,然后向下滚动(您需要将滚动设置为xml中的root):

final View activityRootView = findViewById(R.id.scroll);
activityRootView.getViewTreeObserver().addOnGlobalLayoutListener(new OnGlobalLayoutListener() {
    @Override
    public void onGlobalLayout() {
        int heightDiff = activityRootView.getRootView().getHeight() - activityRootView.getHeight();
        //keyboard is visible
        if (heightDiff > 100) {
            scroll.fullScroll(ScrollView.FOCUS_DOWN);
        }
    }
});