显示软键盘时平移视图的一种好方法是什么

尼加德

我有一个设置了“ adjustPan”选项的活动,当EditText获得焦点并显示软键盘时,它可以平移我的视图,但是我的问题是EditText下还有UI元素,这些元素也需要可见当显示键盘并且它不在较小的屏幕上时。我可以通过将它们链接到EditText或其他方法来告诉视图始终平移以便使这些UI元素可见吗,还是我必须手动控制平移并计算高度和全部,或者这是什么好的解决方案? ?

拉胡尔·沙阿

您可以做的是,可以使用ViewTreeObserver来平移内容。我做到了,这是我的应用程序。

    int edtHeight = 0;

    // llContent is the Viewgroup layout which is inside a ScrollView.
    ViewTreeObserver viewTreeObserver1 = llContent.getViewTreeObserver();
    viewTreeObserver1.addOnGlobalLayoutListener(new OnGlobalLayoutListener()
    {
        @Override
        public void onGlobalLayout()
        {
            // Here edtHeight will get the height of edittext as i wanted my view to scroll that much bit more
            edtHeight = edtTemprature.getHeight();

            ViewTreeObserver obs = llContent.getViewTreeObserver();

            obs.removeGlobalOnLayoutListener(this);
        }
 });

//llMain is the parent View Group of my XML layout 
    llMain.getViewTreeObserver().addOnGlobalLayoutListener(new OnGlobalLayoutListener()
    {
            @Override
            public void onGlobalLayout()
            {
                Rect r = new Rect();
                // r will be populated with the coordinates of your view
                // that area still visible.
                llMain.getWindowVisibleDisplayFrame(r);

                int heightDiff = llMain.getRootView().getHeight() - (r.bottom - r.top);
                if (heightDiff > 100)
                { // if more than 100 pixels, its probably a keyboard...
                    if(edtTemprature.hasFocus()){
                        llContent.scrollTo(0, (int) (edtHeight * 1.5));
                    }else{
                        llContent.scrollTo(0, 0);
                    }
                }
                else
                {
                    llContent.scrollTo(0, 0);
                }
            }
        });

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将SwiftUI警报或操作表绑定到值类型模型属性的可选性的一种好方法是什么(当属性为nil时显示视图)?

来自分类Dev

Android:如何在不调整大小的情况下推动整个活动,在显示软键盘时平移

来自分类Dev

显示软键盘时,为什么android:windowSoftInputMode =“ stateVisible | adjustResize”不能调整屏幕?

来自分类Dev

显示软键盘时后退键的Android键事件?

来自分类Dev

显示软键盘时,Scrollview不会缩小

来自分类Dev

显示软键盘时上移布局

来自分类Dev

显示XOR语句的一种优雅方法是什么

来自分类Dev

处理libc ++和较旧的libstdc ++之间的ABI差异的一种好方法是什么?

来自分类Dev

对字典值进行SUMIF的一种好方法是什么?

来自分类Dev

将大型JSON文件从javascript发送到php的一种好方法是什么?

来自分类Dev

在Rust中进行单元测试后清理的一种好方法是什么?

来自分类Dev

批量检查媒体文件完整性的一种好方法是什么?

来自分类Dev

软键盘使Cordova视图缩小

来自分类Dev

Android软键盘推视图

来自分类Dev

软键盘使Cordova视图缩小

来自分类Dev

处理软键盘和加权视图

来自分类Dev

AlertDialog EditText不显示软键盘

来自分类Dev

Android软键盘显示在Webview上

来自分类Dev

Cocoonjs以编程方式显示软键盘

来自分类Dev

在恢复上显示软键盘

来自分类Dev

Android软键盘显示在Webview上

来自分类Dev

在Android中显示软键盘

来自分类Dev

android:不自动显示软键盘

来自分类Dev

在软键盘下方显示按钮

来自分类Dev

AlertDialog EditText不显示软键盘

来自分类Dev

软键盘更改的回调方法?

来自分类Dev

如何在Android软键盘下显示候选人视图?

来自分类Dev

在Grails中为我的所有服务提供通用方法的一种好方法是什么?

来自分类Dev

显示对话框时,活动中的外部edittext不在Android中显示软键盘

Related 相关文章

  1. 1

    将SwiftUI警报或操作表绑定到值类型模型属性的可选性的一种好方法是什么(当属性为nil时显示视图)?

  2. 2

    Android:如何在不调整大小的情况下推动整个活动,在显示软键盘时平移

  3. 3

    显示软键盘时,为什么android:windowSoftInputMode =“ stateVisible | adjustResize”不能调整屏幕?

  4. 4

    显示软键盘时后退键的Android键事件?

  5. 5

    显示软键盘时,Scrollview不会缩小

  6. 6

    显示软键盘时上移布局

  7. 7

    显示XOR语句的一种优雅方法是什么

  8. 8

    处理libc ++和较旧的libstdc ++之间的ABI差异的一种好方法是什么?

  9. 9

    对字典值进行SUMIF的一种好方法是什么?

  10. 10

    将大型JSON文件从javascript发送到php的一种好方法是什么?

  11. 11

    在Rust中进行单元测试后清理的一种好方法是什么?

  12. 12

    批量检查媒体文件完整性的一种好方法是什么?

  13. 13

    软键盘使Cordova视图缩小

  14. 14

    Android软键盘推视图

  15. 15

    软键盘使Cordova视图缩小

  16. 16

    处理软键盘和加权视图

  17. 17

    AlertDialog EditText不显示软键盘

  18. 18

    Android软键盘显示在Webview上

  19. 19

    Cocoonjs以编程方式显示软键盘

  20. 20

    在恢复上显示软键盘

  21. 21

    Android软键盘显示在Webview上

  22. 22

    在Android中显示软键盘

  23. 23

    android:不自动显示软键盘

  24. 24

    在软键盘下方显示按钮

  25. 25

    AlertDialog EditText不显示软键盘

  26. 26

    软键盘更改的回调方法?

  27. 27

    如何在Android软键盘下显示候选人视图?

  28. 28

    在Grails中为我的所有服务提供通用方法的一种好方法是什么?

  29. 29

    显示对话框时,活动中的外部edittext不在Android中显示软键盘

热门标签

归档