离子键盘和 ngIf 未按预期工作
Ionic keyboard and ngIf work not as expected
我有以下问题:
- 键盘show/hide事件(我使用的是离子键盘)
- Angular js 2 *ngIf to show/hide 键盘时导航栏中的按钮 show/hide
详情:
- 我正在使用 ionic v2 构建应用程序。我的应用程序有 3 个标签栏(就像 运行 命令离子启动时的默认离子应用程序)。
- 在第一个选项卡中,我在导航栏中添加了 2 个按钮,其中一个按钮是 "start" 类型,另一个是 "end" 类型。 "start" 类型的按钮是取消按钮。也有输入值。
- 我的要求是当用户在字段内点击时,键盘将显示。当键盘显示时,我使用 *ngIf 来显示按钮(取消按钮)。当键盘隐藏时,我会隐藏按钮。
iOS 的设备一切正常。但在 Android 中,它的效果不如预期。第一次点击字段,取消按钮不显示(键盘已经显示),然后我点击外部字段,键盘隐藏,取消按钮显示,与我预期的不同。
重现步骤:
我将源代码提交到:https://github.com/RioV/ionic2Study
1. npm 安装
2.离子平台添加ios/android
3. 将应用构建到 android 设备中。
4.在主页选项卡中,选项卡输入数字字段以显示设备的键盘,按钮取消不显示(我希望它显示)
5. 点击输入数字字段外隐藏键盘,按钮取消显示。
https://github.com/RioV/ionic2Study
哪个离子版本? CLI v2.0.0-beta.32
运行 来自 terminal/cmd 提示的离子信息:(粘贴下面的输出)
科尔多瓦 CLI:6.2.0
离子框架版本:2.0.0-beta.9
离子 CLI 版本:2.0.0-beta.32
离子应用程序库版本:2.0.0-beta.18
ios-部署版本:1.8.6
ios-模拟版本:5.0.8
OS: Mac OS X El Capitan
节点版本:v6.2.1
Xcode 版本:Xcode 7.3.1 构建版本 7D1014
我正在测试
iPhone 5s,iOS 8.4:好的
iPad 迷你 3,iOS 9.3.1:好的
Nesus 7,Android 5.0.2:异常
有人遇到过这个问题吗?
我发布到 drifty 的 github,ionic 论坛但还没有回复:(
键盘插件存在错误。
您需要在 zone.run
调用中包装更新 controlShowHide
对象的调用。
zone.run( () => {
console.log('KEYBOAD SHOW');
self.controlShowHide['cancelButton'] = true;
console.log("keyboardShowHandler Value is: ", self.controlShowHide['cancelButton']);
});
继续为您的按钮添加一些样式。我在那里也看到了一个问题。
<ion-buttons *ngIf="controlShowHide.cancelButton === true" start>
<button secondary (click)="invokeButtonCancel()">
Cancel
</button>
</ion-buttons>
希望对您有所帮助。我将提交有关键盘插件区域问题的错误报告。
谢谢,
旦
我有以下问题:
- 键盘show/hide事件(我使用的是离子键盘)
- Angular js 2 *ngIf to show/hide 键盘时导航栏中的按钮 show/hide
详情:
- 我正在使用 ionic v2 构建应用程序。我的应用程序有 3 个标签栏(就像 运行 命令离子启动时的默认离子应用程序)。
- 在第一个选项卡中,我在导航栏中添加了 2 个按钮,其中一个按钮是 "start" 类型,另一个是 "end" 类型。 "start" 类型的按钮是取消按钮。也有输入值。
- 我的要求是当用户在字段内点击时,键盘将显示。当键盘显示时,我使用 *ngIf 来显示按钮(取消按钮)。当键盘隐藏时,我会隐藏按钮。
iOS 的设备一切正常。但在 Android 中,它的效果不如预期。第一次点击字段,取消按钮不显示(键盘已经显示),然后我点击外部字段,键盘隐藏,取消按钮显示,与我预期的不同。
重现步骤: 我将源代码提交到:https://github.com/RioV/ionic2Study 1. npm 安装 2.离子平台添加ios/android 3. 将应用构建到 android 设备中。 4.在主页选项卡中,选项卡输入数字字段以显示设备的键盘,按钮取消不显示(我希望它显示) 5. 点击输入数字字段外隐藏键盘,按钮取消显示。
https://github.com/RioV/ionic2Study 哪个离子版本? CLI v2.0.0-beta.32
运行 来自 terminal/cmd 提示的离子信息:(粘贴下面的输出) 科尔多瓦 CLI:6.2.0 离子框架版本:2.0.0-beta.9 离子 CLI 版本:2.0.0-beta.32 离子应用程序库版本:2.0.0-beta.18 ios-部署版本:1.8.6 ios-模拟版本:5.0.8 OS: Mac OS X El Capitan 节点版本:v6.2.1 Xcode 版本:Xcode 7.3.1 构建版本 7D1014
我正在测试 iPhone 5s,iOS 8.4:好的 iPad 迷你 3,iOS 9.3.1:好的 Nesus 7,Android 5.0.2:异常
有人遇到过这个问题吗? 我发布到 drifty 的 github,ionic 论坛但还没有回复:(
键盘插件存在错误。
您需要在 zone.run
调用中包装更新 controlShowHide
对象的调用。
zone.run( () => {
console.log('KEYBOAD SHOW');
self.controlShowHide['cancelButton'] = true;
console.log("keyboardShowHandler Value is: ", self.controlShowHide['cancelButton']);
});
继续为您的按钮添加一些样式。我在那里也看到了一个问题。
<ion-buttons *ngIf="controlShowHide.cancelButton === true" start>
<button secondary (click)="invokeButtonCancel()">
Cancel
</button>
</ion-buttons>
希望对您有所帮助。我将提交有关键盘插件区域问题的错误报告。
谢谢, 旦