相关疑难解决方法(0)

在不使用私有API的情况下获取当前的第一响应者

我在一周前提交了我的应用程序,今天收到了可怕的拒绝电子邮件.它告诉我我的应用程序无法被接受,因为我使用的是非公共API; 具体来说,它说,

应用程序中包含的非公共API是firstResponder.

现在,违规的API调用实际上是我在SO上找到的解决方案:

UIWindow *keyWindow = [[UIApplication sharedApplication] keyWindow];
UIView   *firstResponder = [keyWindow performSelector:@selector(firstResponder)];
Run Code Online (Sandbox Code Playgroud)

如何在屏幕上显示当前的第一响应者?我正在寻找一种不会让我的应用被拒绝的方法.

cocoa-touch objective-c first-responder

334
推荐指数
15
解决办法
15万
查看次数

ResignFirstResponder不会关闭键盘(iPhone)

我在这个网站上搜索过,我找不到解决我现在面临的问题的方法.希望有人能提供帮助.

我创建了一个UIAlertView来提示用户在iPhone应用程序中输入他们的名字.

    UIAlertView *enterNameAlert = [[UIAlertView alloc] initWithTitle:@"Enter your name"
                                                             message:@"\n\n\n"
                                                            delegate:self
                                                   cancelButtonTitle:NSLocalizedString(@"Cancel", nil)
                                                   otherButtonTitles:NSLocalizedString(@"OK", nil),nil];

    UITextField *enterNameField = [[UITextField alloc] initWithFrame:CGRectMake(16, 83, 252, 25)];
    enterNameField.keyboardAppearance = UIKeyboardAppearanceAlert;
    enterNameField.borderStyle = UITextBorderStyleRoundedRect;
    enterNameField.autocorrectionType = UITextAutocorrectionTypeNo;
    enterNameField.clearButtonMode = UITextFieldViewModeWhileEditing;
    enterNameField.returnKeyType = UIReturnKeyDone;
    enterNameField.delegate = self;
    [enterNameField becomeFirstResponder];
    [enterNameAlert addSubview:enterNameField];

    [enterNameAlert show];
    [enterNameAlert release];
    [enterNameField release];
Run Code Online (Sandbox Code Playgroud)

我已经设置了这个viewController以符合头文件中的UITextFieldDelegate,并实现textFieldShouldReturn:了在用户点击Done时尝试关闭键盘.

- (BOOL)textFieldShouldReturn:(UITextField *)textField {
    if ([textField isFirstResponder]) {
        [textField resignFirstResponder];
        NSLog(@"text field was first responder");
    } else {
        [textField becomeFirstResponder];
        [textField resignFirstResponder];
        NSLog(@"text field …
Run Code Online (Sandbox Code Playgroud)

iphone keyboard uitextfield uialertview dismiss

7
推荐指数
1
解决办法
7804
查看次数