UIKeyboardTypeNumberPad 数字键盘添加完成按钮

一:添加通知

 //数字键盘添加完成

    [[NSNotificationCenterdefaultCenter] addObserver:selfselector:@selector(keyboardWillShow:) name:UIKeyboardDidShowNotificationobject:nil];

二:数字键盘出现添加

//键盘处理
- (void)keyboardWillShow:(NSNotification *)note
{
    UIButton *doneButton = [UIButton buttonWithType:UIButtonTypeCustom];
    doneButton.frame = CGRectMake(15, 172, 65, 35);
    //doneButton.frame = CGRectMake(8, 163, 50, 30);

    //[doneButton setTitle:@"完成" forState:UIControlStateNormal];
    [doneButton setBackgroundImage:[UIImage imageNamed:@"pickerBackIMG.png"] forState:UIControlStateNormal];
    [doneButton addTarget:self action:@selector(doneBtn) forControlEvents:UIControlEventTouchUpInside];
    
    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:@"<UIPeripheralHostView"] == YES) ||(([[keyboard description] hasPrefix:@"<UIKeyboard"] == YES)))
                [keyboard addSubview:doneButton];
    }
}

- (void)doneBtn
{
    [phoneNumTextField resignFirstResponder];

}

  三:移除通知

- (void)dealloc

{

    [[NSNotificationCenterdefaultCenter]removeObserver:selfname:UIKeyboardDidShowNotificationobject:nil];

    [kDatePickerrelease];

    [super dealloc];

}

posted @ 2013-08-08 17:42  cocoajin  阅读(1100)  评论(0编辑  收藏  举报