2016-08-12 103 views
3

在iOS(iOS 8)10.0 beta 4(iPhone XCode 8 beta 5)中,当用户点击数字键盘文本字段或小数点键盘文本字段时,系统的号码或十进制小键盘,而不是属于键盘扩展。至少,我的键盘扩展和Xcode提供的骨架定制键盘扩展都是如此。iOS 10.0 Beta,键盘扩展:消失的数字键盘(iPhone)

此外,当用户轻敲在我的测试程序中的数字键盘的文本字段或十进制垫文本字段时,控制台显示该消息(这是版本的数字键盘,这是类型4):

2016-08-11 21:58:43.007 TestNumberPad[34090:1780242] Can't find keyplane that supports type 4 for keyboard iPhone-PortraitChoco-NumberPad; using 1144316255_PortraitChoco_iPhone-Simple-Pad_Default

这里是我的测试程序的结果。默认的键盘扩展应该出现在所有3种情况中。

enter image description hereenter image description here

enter image description here


这里是属性检查器条目为我的3个文本字段

enter image description hereenter image description here

enter image description here

顶部

这里的ViewController.swift

import UIKit 

class ViewController: UIViewController, UITextFieldDelegate { 

    @IBOutlet weak var defaultField: UITextField! // 'tag' property = 3 
    @IBOutlet weak var numberField: UITextField! // 'tag' property = 4 
    @IBOutlet weak var decimalField: UITextField! // 'tag' property = 5 

    override func viewDidLoad() { 
    super.viewDidLoad() 
    defaultField.delegate = self 
    numberField.delegate = self 
    decimalField.delegate = self 

    // I TRIED AN ALTERNATE TEST, WHERE I SPECIFY THE KEYBOARD TYPE PROGRAMMATICALLY, NOT IN THE IB: 
    // 
    // 1. IN THE INTERFACE BUILDER, SET ALL 3 KEYBOARD TYPES TO 'DEFAULT'. 
    // 2. UNCOMMENT THE CODE BELOW 
    // 
    // UNFORTUNATELY, THE RESULTS ARE THE SAME 
    // 
// defaultField.keyboardType = UIKeyboardType.default 
// numberField.keyboardType = UIKeyboardType.numberPad 
// decimalField.keyboardType = UIKeyboardType.decimalPad 
    } 

    func textFieldDidBeginEditing(_ textField: UITextField) { 
    switch textField.tag { 
    case 3: print("Tapped default field") 
    case 4: print("Tapped number pad") 
    case 5: print("Tapped decimal pad") 
    default: 
     print("Text field doesn't have a tag!!") 
    } 
    } 
} 

最后,这里的敲击时的控制台输出,从而,默认领域,数字键盘领域,小数垫场。

螺纹默认字段2016年8月12日11:13:08.561083

TestNumberPad [2201:221335] [MC]系统组 systemgroup.com.apple.configurationprofiles路径容器是 /私人/ var/containers/Shared/SystemGroup/systemgroup.com.apple.configurationprofiles

2016-08-12 11:13:08.563097 TestNumberPad [2201:221335] [MC]从公共有效用户设置中读取 。

2016年8月12日11:13:08.799888 TestNumberPad [2201:221335] [应用]如果我们是在真正的预提交 处理程序,我们实际上并不能由于CA限制添加任何新的围栏

抽头数垫

2016年8月12日11:13:15.070750 TestNumberPad [2201:221335]无法找到支持类型4 键盘iPhone画像-数字小keyplane;使用 160517473_Portrait_iPhone-简单Pad_Default

螺纹小数垫

2016年8月12日11时13分17秒。627520 TestNumberPad [2201:221335]找不到 键盘支持键盘iPhone-Portrait-DecimalPad的类型8; 使用405786210_Portrait_iPhone-简单Pad_Default

应用程序商店审查指南仍需要自定义键盘,以提供数字垫和小数垫,因此这似乎是一个重要的问题。

回答

0

我猜你在模拟器上测试了,所以当键盘是不是有它给出了记录此错误。

所以只需切换键盘,或使用该设备。

+0

唉,我的确在模拟器和设备上进行测试。事实上,我只是在设备上进行测试才能避免这个问题。但是,感谢您的意见并祝您周末愉快。 – LarryTheSoftwareGuy