相关疑难解决方法(0)

如何在iOS中为numpad键盘添加"完成"按钮

因此,numpad键盘默认没有"完成"或"下一步"按钮,所以我想添加一个.在iOS 6及更低版本中,有一些技巧可以在键盘上添加一个按钮,但它们似乎不适用于iOS 7.

首先,我订阅显示通知的键盘

[[NSNotificationCenter defaultCenter] addObserver:self
                                         selector:@selector(keyboardWillShow:)
                                             name:UIKeyboardWillShowNotification
                                           object:nil];
Run Code Online (Sandbox Code Playgroud)

然后我尝试在键盘出现时添加一个按钮:

- (void)keyboardWillShow:(NSNotification *)note 
{
    // create custom button
    UIButton *doneButton = [UIButton buttonWithType:UIButtonTypeSystem];
    doneButton.frame = CGRectMake(0, 50, 106, 53);
    doneButton.adjustsImageWhenHighlighted = NO;
    [doneButton setTitle:@"Done" forState:UIControlStateNormal];
    [doneButton addTarget:self action:@selector(dismissKeyboard) forControlEvents:UIControlEventTouchUpInside];

    // locate keyboard view
    UIWindow* tempWindow = [[[UIApplication sharedApplication] windows] objectAtIndex:1];
    UIView* keyboard;
    for(int i=0; i<[tempWindow.subviews count]; i++) 
    {
        keyboard = [tempWindow.subviews objectAtIndex:i];
        // keyboard view found; add the custom button to it
        if([[keyboard description] hasPrefix:@"UIKeyboard"] == YES)
        [keyboard addSubview:doneButton]; …
Run Code Online (Sandbox Code Playgroud)

iphone cocoa-touch uitextfield uikit ios

83
推荐指数
4
解决办法
7万
查看次数

标签 统计

cocoa-touch ×1

ios ×1

iphone ×1

uikit ×1

uitextfield ×1