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:如何以编程方式关注 ios 上的文本字段?