改变原生,phonegap / Cordova构建iOS应用程序中的键盘外观

时间:2012-08-09 18:36:45

标签: ios xcode cordova keyboard appdelegate

我想更改Phonegap / Cordova构建的原生iOS应用程序中出现的所有键盘的背景颜色,如下所示:

enter image description here

我当然彻底搜索了这个,主要找到了2个相关的答案。回答者here说Objective-C代码可以添加到PhoneGap项目的AppDelegate.m文件中,如this页面所示。我找到了 AppDelegate.m 文件,但似乎无法弄清楚如何将键盘外观设置为所有文本字段上的UIKeyboardAppearanceAlert。回答者提供的代码示例:

 mytextfield.keyboardAppearance = UIKeyboardAppearanceAlert;

根据cordova编写应用程序,我无法区分任何文本域ID以连接到上面的示例。 Xcode / Cordova中是否有一个文件,其中列出了所有文本域ID,甚至更好:

有没有办法可以通过UIKeyboardAppearanceAlert或类似方法将键盘外观设置为黑暗,适用于所有文本字段并且与Cordova兼容?

谢谢

3 个答案:

答案 0 :(得分:5)

在各种社交媒体上广泛分享这个问题,更广泛和彻底的研究,询问朋友和朋友等,我只能得出这样的结论,即使用phonegap和cordova无法做到这一点。我很想让任何人证明我很久。但就目前而言,这是我将要总结的结论。

答案 1 :(得分:1)

据我所知,你不能在没有重大黑客的情况下与科尔多瓦合作,这可能不会受到苹果公司的赏识。但不确定。

答案 2 :(得分:1)

无法通过代码并将每个uitextfields键盘的样式手动设置为黑暗键盘,无法将其应用于应用中的所有文本字段。

编辑2:不幸的是,如果没有进入Phonegap框架,看起来没有任何可能的方法。如上所述,如果没有“黑客入侵”,这似乎不可能。

编辑: 输入标签似乎没有任何HTML元素(来自Apple的Mobile Safari或Phonegap),您可以将其设置为使外观成为警报。所以(如果可能的话)搜索UITextField *。

Like in this image...

就在看起来应该看起来像这样的界线之下:

UITextField *field = [[UITextField alloc] init...];

添加此行

field.keyboardAppearance = UIKeyboardAppearanceAlert; // just like in your example...

如果您对所有UITextField结果执行此操作,那么您的所有键盘将如下图所示。