0

我们如何在具有如下图界面的默认键盘中添加自定义按钮。

在此处输入图像描述

我该怎么做?

谢谢。

4

4 回答 4

0

查看本教程http://www.neoos.ch/blog/37-uikeyboardtypenumberpad-and-the-missing-return-key

于 2012-10-03T05:29:01.513 回答
0

它非常简单,只需使用 .xib 创建一个 viewController 并获取上图的屏幕截图。修复 UIImageView 上的屏幕截图然后你需要放置自定义 UIButtons 并设置标签属性,就像按钮想要喜欢的一样 1,2,3 然后创建一个分配给所有 UIButtons 的方法并使用它们的标签属性进行操作。

如果你想在 UITextField 中输入一些文本,那么你需要实现 UITextFiled textShouldBeginEditing 的委托方法 return no。你有什么想法吗?

于 2012-10-03T05:29:57.550 回答
0

我认为您可以提供一个UIView替换键盘...但是我从未使用过此功能。

于 2012-10-03T06:25:05.620 回答
-1

您可以UIKeyBoard通过自定义添加简单的按钮。

- (void)keyboardDidShow:(NSNotification *)note {


// create custom button
UIButton *doneButton = [UIButton buttonWithType:UIButtonTypeCustom];
doneButton.frame = CGRectMake(215, 163, 106, 53);
doneButton.adjustsImageWhenHighlighted = NO;
[doneButton setImage:[UIImage imageNamed:@"DoneUp.png"] forState:UIControlStateNormal];
[doneButton setImage:[UIImage imageNamed:@"DoneDown.png"] forState:UIControlStateHighlighted];
[doneButton addTarget:self action:@selector(doneButton:) forControlEvents:UIControlEventTouchUpInside];

UIWindow* tempWindow;

UIView* keyboard;

for(int c = 0; c < [[[UIApplication sharedApplication] windows] count]; c ++)
{
    tempWindow = [[[UIApplication sharedApplication] windows] objectAtIndex:c];

    for(int i = 0; i < [tempWindow.subviews count]; i++)
    {
        keyboard = [tempWindow.subviews objectAtIndex:i];

        if([[keyboard description] hasPrefix:@"<UIPeripheralHostView"] == YES)
        {
            [keyboard addSubview:doneButton];
        }
    }
}
}

或查看此链接以获取自定义键盘布局

BSKeyboardControls

于 2012-10-03T05:33:10.030 回答