模式视图控制器在我的iPad应用程序,我要提供一些视图控制器在UIModalPresentationFormSheet模式模式无键盘。的iPad - 关闭键盘在UIModalPresentationFormSheet模式
我用它来显示帮助为例。
在我用计算器答案的一个找到的代码以关闭的那一刻:
// trick to dismiss keyboard in iPad:
if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad){
// iPad specific behaviour:
@try
{
Class UIKeyboardImpl = NSClassFromString(@"UIKeyboardImpl");
id activeInstance = [UIKeyboardImpl performSelector:@selector(activeInstance)];
[activeInstance performSelector:@selector(dismissKeyboard)];
}
@catch (NSException *exception)
{
//NSLog(@"%@", exception);
}
}
但恐怕苹果可以,因为它使用私有API在审批过程中拒绝它在
我可以看到Apple开发人员在GarageBand帮助屏幕中实现了这一目标,因此它必须是“正确”的方法。
希望能有所帮助,因为我们的客户不希望改变设计理念,因为这种轻微的限制。
UPDATE: 就在今天,我从AppStore的拒绝:
我们发现您的应用使用一个或 多个非公开的API,这是不 符合App Store的审查 指南。使用非公开API 是不允许的,因为如果这些API改变,它可能导致 糟糕的用户体验。
我们发现您应用中的以下非公开的API :
activeInstance dismissKeyboard
所以请不遵循这个建议: How to HIDE the iPad keyboard from a MODAL view controller?
这会很容易欺骗苹果。我相信他们能够扫描从NSString构建的选择器。他们不会轻易绕过私人限制。 – Lukasz 2011-05-21 06:26:53