【问题标题】:Android Move the whole screen upwards when softkeypad is opened?Android 打开软键盘时向上移动整个屏幕?
【发布时间】:2012-07-06 12:57:02
【问题描述】:

我只想在用户单击编辑文本时将整个活动屏幕向上移动... 我的意思是屏幕将向上移动,在它下方我们可以看到软键盘...... 我曾尝试在我的清单文件中使用 android:windowSoftInputMode="adjustPan|adjustResize" 但它没有任何意义.. 在此先感谢...

【问题讨论】:

    标签: android


    【解决方案1】:

    在您的 xml 布局中。使滚动视图成为根父级,它将起作用!

    试试这个来检测键盘是否打开,然后向下滚动(你需要你的滚动是 xml 中的根):

    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);
            }
        }
    });
    

    【讨论】:

    • 我已经完成了,但它没有将屏幕完全滚动到底部...请自行检查...谢谢
    • scroller.post(new Runnable() { public void run() { scroller.fullScroll(ScrollView.FOCUS_DOWN); } });
    • couldn't get the solution yet....你能提供一个简单的应用程序来解决我的问题吗?问题是当键盘可见时,我无法以编程方式滚动视图......方法不起作用..提前感谢
    • 在 scroll.fullScroll(ScrollView.FOCUS_DOWN) 什么类型的滚动它给我错误?
    • 这是你的 ScrollView。您在 xml 布局中作为根父级的那个。
    猜你喜欢
    • 1970-01-01
    • 2022-01-19
    • 2012-08-14
    • 1970-01-01
    • 2016-04-19
    • 2021-09-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多