如何检查键盘是否显示?
How to check whether the keyboard is shown or not?
我正在使用 EarlGrey
对 iOS 项目进行自动化 UI 测试。我想在屏幕上滑开后检查键盘是否显示。
我在 EarlGrey
框架中看到名为 GREYKeyboard.h 的头文件,其中包含一个名为 isKeyboardShown
的函数,其布尔值 return。这对我很有帮助,但我不知道如何使用它,因为我无法访问此 API.
EarlGrey
与 Carthage
一起安装。
您包含 GREYKeyboard.h
header 并执行此操作:
if (GREYKeyboard.isKeyboardShown) {
; // the keyboard is showing
}
else {
; // it's not
}
我找到了解决办法。您可以通过编辑 module.modulemap
文件来访问 GREYKeyboard.h
(这是私有的 header)。添加
header "../PrivateHeaders/GREYKeyboard.h"
行到文件。 module.modulemap
文件在编辑后应如下所示:
framework module EarlGrey {
umbrella header "EarlGrey.h"
header "../PrivateHeaders/GREYKeyboard.h"
export *
module * { export * }
}
我正在使用 EarlGrey
对 iOS 项目进行自动化 UI 测试。我想在屏幕上滑开后检查键盘是否显示。
我在 EarlGrey
框架中看到名为 GREYKeyboard.h 的头文件,其中包含一个名为 isKeyboardShown
的函数,其布尔值 return。这对我很有帮助,但我不知道如何使用它,因为我无法访问此 API.
EarlGrey
与 Carthage
一起安装。
您包含 GREYKeyboard.h
header 并执行此操作:
if (GREYKeyboard.isKeyboardShown) {
; // the keyboard is showing
}
else {
; // it's not
}
我找到了解决办法。您可以通过编辑 module.modulemap
文件来访问 GREYKeyboard.h
(这是私有的 header)。添加
header "../PrivateHeaders/GREYKeyboard.h"
行到文件。 module.modulemap
文件在编辑后应如下所示:
framework module EarlGrey {
umbrella header "EarlGrey.h"
header "../PrivateHeaders/GREYKeyboard.h"
export *
module * { export * }
}