Appcelerator键盘工具栏不会隐藏在模拟器中

时间:2016-06-28 13:36:15

标签: ios titanium appcelerator

我正在使用Appcelerator,键盘工具栏并没有隐藏在模拟器中,如果我在屏幕底部有一个按钮,它会导致各种问题,它只会永久地停留在底部。

以下是该问题的视频。 https://www.youtube.com/watch?v=RypzFJwSbtw&feature=youtu.be

这是我的代码。

<TextField class="setupPin" id="pinOne" keyboardType="Ti.UI.KEYBOARD_TYPE_NUMBER_PAD" passwordMask="true" maxLength="4">
                <KeyboardToolbar>
                    <Toolbar>
                        <Items>
                            <Button onClick="closeToolbar">button 1</Button>
                            <FlexSpace/>
                            <Button onClick="submitToolbar">button 2</Button>
                        </Items>
                    </Toolbar>
                </KeyboardToolbar>
            </TextField>

有人会建议修复让我发疯吗?

由于

2 个答案:

答案 0 :(得分:1)

尝试使用类似的方法从工具栏按钮隐藏工具栏/键盘。如果这对您不起作用,请添加评论,我会进一步调查。

https://gist.github.com/brentonhouse/2ffd923d41632d29bbd45c5516751d76

<Alloy>
   <TextField id="myTextField" width="Ti.UI.FILL" textAlign="Titanium.UI.TEXT_ALIGNMENT_RIGHT" keyboardType="Ti.UI.KEYBOARD_TYPE_DECIMAL_PAD" verticalAlign="Ti.UI.TEXT_VERTICAL_ALIGNMENT_CENTER" onFocus="showKeyboard">
      <KeyboardToolbar>
         <Toolbar>
            <Items>
               <Button systemButton="FLEXIBLE_SPACE" />
               <Button systemButton="DONE" onClick="hideKeyboard" textField="myTextField" />
            </Items>
         </Toolbar>
      </KeyboardToolbar>
   </TextField>
</Alloy>
var hideKeyboard = function(e) {
    var parent_name = e.source.textField;

    if(parent_name) {
        var parent = $[parent_name];
        parent.blur();
        parent.keyboardToolbar.visible = false;
    }

};

var showKeyboard = function(e) {
    e.source.keyboardToolbar.visible = true;
};

答案 1 :(得分:0)

我希望您已经在 按钮1 上实现了该功能,点击以模糊 pinOne 字段:

function closeToolbar() {
    $.pinOne.blur();
}

假设上面的实现,现在它不是你的代码的问题,也不是模拟器中的问题,但ios模拟器中还有另一个功能,你可以切换模拟器键盘。

可以选择在模拟器中切换键盘。请参阅此KEYBOARD SCREENSHOT

在关注键盘字段后尝试切换键盘,并确保取消选中连接硬件键盘选项。

如果未选中连接硬件键盘,则无法使用物理键盘输入,因此要使用物理键盘并隐藏工具栏,请切换切换软件键盘< / strong>保持连接硬件键盘