5

@IBInspectabale からキーボード選択を作成したかった

キーボードの選択

これを達成する方法

ImageView と TextField を挿入するビューを作成しています。このカスタム ビュー クラスを @IBDesignable として作成し、@IBInspectable 要素を作成しています。

サイド イメージとプレースホルダー要素を正常に作成しましたが、現在はキーボード タイプを作成しようとしていますが、問題に直面しています。

コードの抜粋: `import UIKit

@IBDesignable class CustomTextField: UIView,UITextFieldDelegate {

//custom view from the XIB file
var view: UIView!

@IBOutlet weak var textField: UITextField!
@IBOutlet weak var imageView: UIImageView!

override init(frame: CGRect) {
    super.init(frame: frame)
    loadViewFromNib ()
}

required init?(coder aDecoder: NSCoder) {
    super.init(coder: aDecoder)
    loadViewFromNib ()
}

func loadViewFromNib() {
    let bundle = Bundle(for: type(of: self))
    let nib = UINib(nibName: "CustomTextField", bundle: bundle)
    let view = nib.instantiate(withOwner: self, options: nil)[0] as! UIView
    view.frame = bounds
    view.autoresizingMask = [.flexibleWidth, .flexibleHeight]
    self.addSubview(view);



}

@IBInspectable var sideImage: UIImage? {
    get {
        return imageView.image
    }
    set(sideImage) {
        imageView.image = sideImage
    }
}

@IBInspectable var placeHolderText: String? {
    get {
        return textField.placeholder
    }
    set(placeHolderText) {
        textField.placeholder = placeHolderText
    }
}'

上記のすべては正常に機能しますが、以下は私にとっては機能しません:

@IBInspectable var keyboard: UIKeyboardType? {
    get{
        return UIKeyboardType(rawValue: textField.keyboardType.rawValue)
    }
    set(keyboard){
        textField.keyboardType = keyboard!
    }
}

}

enum を作成して試してみましたが、結果が得られません。

4

2 に答える 2