Sencha Touch android 键盘隐藏文本区域

Posted

技术标签:

【中文标题】Sencha Touch android 键盘隐藏文本区域【英文标题】:Sencha Touch android keypad hiding textarea 【发布时间】:2016-03-22 13:42:07 【问题描述】:

`

constructor: function() 
          this.adjustHeight = Ext.Function.createBuffered(function(textarea) 
            var textAreaEl = textarea.getComponent().input;

            if (textAreaEl) 
              textAreaEl.dom.style.height = 'auto'; 
              var iNewHeight = textAreaEl.dom.scrollHeight;
              if (iNewHeight > 0) 
                textAreaEl.dom.style.height = textAreaEl.dom.scrollHeight + "px";
              
            
          ,200,this);

          this.callParent(arguments);
        

我希望 textarea 专注于完整内容 visible 。但是用键盘隐藏文本区域

【问题讨论】:

如果后面有足够多的元素,你可以尝试使用 list.getScrollable().getScroller().scrollTo(Element)。 我试过了,但是会产生跳跃效果@ProtoBassi 对焦前你试穿了吗 if (iNewHeight > 0) textAreaEl.dom.style.height = textAreaEl.dom.scrollHeight + "px"; this.getParent().getParent().getScrollable().getScroller().scrollTo(0, iNewHeight); 以前我是这样尝试的 【参考方案1】:

尝试在滚动时使用 onBeforeFocus 事件:

scrollableView.scrollTo(textfield.element.getXY()[0],textfield.element.getXY()[1]);

现在您可能希望对所有文本字段和文本区域字段执行此操作,以便用户在所有项目上得到相同的结果。

确保效果早于键盘动画或延迟大约 175 毫秒。

Ext.defer(function() ###your code goes here###, 175, this);

【讨论】:

以上是关于Sencha Touch android 键盘隐藏文本区域的主要内容,如果未能解决你的问题,请参考以下文章

Sencha Touch 2 文本框在 iOS 7 中的焦点问题

Sencha Touch 不会隐藏我的列表

sencha touch 在按钮的选项卡上隐藏和显示组件

Sencha Touch:如何以编程方式关注 ios 上的文本字段?

Sencha Touch - Windows Phone 8 Phonegap 应用程序栏不隐藏在后退按钮单击

Sencha Touch 应用部署到 iPhone 和 Android