我已经为iPhone和SDK下载了iOS 8 Gold Master.
我测试了应用程序,它工作正常,除了一件事.
我有一个文本字段,如果用户想要键入内容,则会出现数字键盘,此外,当键盘显示时,自定义按钮会添加到空白区域.
- (void)addButtonToKeyboard
{
if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone)
{
// create custom button
UIButton * doneButton = [UIButton buttonWithType:UIButtonTypeCustom];
doneButton.frame = CGRectMake(-2, 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(saveNewLead:) 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 ([[[UIDevice …Run Code Online (Sandbox Code Playgroud) 我正在编写一个iPhone应用程序,它使用包含小数点的键盘.因为这在Interface Builder中不是标准的,所以我将此分配给方法中的文本字段,viewDidLoad如下所示:
[self.TextField_PrintedRepeat setKeyboardType:UIKeyboardTypeDecimalPad];
Run Code Online (Sandbox Code Playgroud)
当我运行此应用程序时,点击文本字段并显示键盘,我将其输入控制台日志:
找不到支持键盘iPhone-Portrait-DecimalPad的8型键盘; 使用默认值
你知道这意味着什么吗?
我需要担心吗?
如何停止此控制台消息?
编辑:我正在使用iOS 4.2.1
我刚刚放入textfield我的控制器类,并keyboard从界面构建器中选择类型到数字键盘.当键盘出现时,我在控制台中看到了此警告.
Can't find keyplane that supports type 5 for keyboard iPhone-Portrait-PhonePad; using 2870935746_Portrait_iPhone-Complex-Pad_Default
Run Code Online (Sandbox Code Playgroud) 我当前在键盘处于活动状态时更改了滚动视图大小.我还使用箭头允许用户快速移动到下一个文本字段.我的scrollRectToVisible在垂直方向上无法正常工作.它正确地水平移动.我的小数点有问题
2014-09-12 10:29:24.039 TS[1895:455658] Can't find keyplane that supports type 8 for keyboard iPhone-Portrait-DecimalPad; using 1425143906_Portrait_iPhone-Simple-Pad_Default
Run Code Online (Sandbox Code Playgroud)
我还介绍了以下代码.
- (void)keyboardDidShow:(NSNotification *)n {
// Find top of keyboard input view
CGRect keyboardRect = [[[n userInfo] objectForKey:UIKeyboardFrameEndUserInfoKey] CGRectValue];
keyboardRect = [self.view convertRect:keyboardRect fromView:nil];
CGFloat keyboardTop = keyboardRect.origin.y;
// Resize scroll view
CGRect newScrollViewFrame = CGRectMake(0, 0, self.view.bounds.size.width, keyboardTop);
newScrollViewFrame.size.height = keyboardTop - self.view.bounds.origin.y;
[self.scrollView setFrame:newScrollViewFrame];
}
Run Code Online (Sandbox Code Playgroud)
我注意到我的十进制键盘的keyboardRect是244,默认键盘的键盘是207.我不知道如何解决这个问题.此问题也只在iOS 8中出现.我的应用程序在iOS 7中没有任何问题.感谢您的帮助.
更新:我发现当最初选择文本字段时,滚动视图会相应地移动.当您在键盘启动时选择另一个文本字段时,问题发生时.看来,scrollview将其大小重置为原始尺寸.为什么会这样?有没有办法阻止这种情况发生?
是否可以在iPad中显示仅包含0-9数字的键盘?我不希望键盘显示任何其他内容.我知道我们可以在.xib文件中使用这个KeyboardType:Number Pad,但它会显示包括数字在内的所有其他额外字符.我想使用这个概念来显示我正在处理的iPad应用程序的PIN登录键盘.谢谢
有谁遇到过这种情况?
当我试图运行在Xcode6Beta中完成的应用程序时,它一直显示:
2014-07-14 00:28:48.131 WeightLogger2 [1866:32214]无法找到支持键盘iPhone-Portrait-DecimalPad的8型键盘; 使用2617181025_Portrait_iPhone-Simple-Pad_Default
我在故事板中添加了一个uitextfield.当点击uitextfield键盘没有显示错误时:找不到支持键盘类型4的键盘iPhone-PortraitChoco-NumberPad; 使用2382260317_PortraitChoco_iPhone-Simple-Pad_Default
我有一些非常基本的代码,当用户按下按钮时,它会从文本字段中读取文本,并更新标签上的文本.我将输入字段的类型设置为数字键盘.
import UIKit
class ViewController: UIViewController {
@IBOutlet var userGuessTextField: UITextField!
@IBOutlet var resultLabel: UILabel!
@IBAction func guess(sender: AnyObject) {
let randomNumber = String(arc4random_uniform(11))
if randomNumber == userGuessTextField.text {
resultLabel.text = "You're right"
} else {
resultLabel.text = "Wrong! It was a \(randomNumber)"
}
}
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
} …Run Code Online (Sandbox Code Playgroud) ios8 ×3
iphone ×3
ios ×2
objective-c ×2
ios8.1 ×1
ipad ×1
keypad ×1
swift ×1
uikeyboard ×1
uiscrollview ×1
xcode ×1
xcode6 ×1