i zwei benutzerdefinierte Ansicht Klassen hinzugefügt und die Elemente dieser Klasse sind addede Klasse Viewcontroller, aber ich kann nicht erste Element accecssing aber ich zweite ElementUIElements nicht Brennen nicht auf Sicht highrarchy
hören zugreifen kann meinen Code
1. Klasse
Klasse TextField-: UIView {
override init(frame: CGRect) {
super.init(frame: frame)
let view=UIView(frame : CGRectMake(8,100,270,47))
let headerText=UILabel(frame : CGRectMake(0,0,view.bounds.width,16))
headerText.text="label"
headerText.textColor=UIColor.blackColor()
headerText.textAlignment=NSTextAlignment.Left
headerText.font = UIFont.systemFontOfSize(13.0)
headerText.numberOfLines = 0
view.addSubview(headerText)
let textField=UITextField(frame : CGRectMake(0,20,view.bounds.width,28))
textField.borderStyle=UITextBorderStyle.RoundedRect
textField.userInteractionEnabled=true
textField.keyboardType=UIKeyboardType.NamePhonePad
view.addSubview(textField)
self.addSubview(view)
}
required init?(coder aDecoder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
}
2. Klasse
Protokoll ElementDelegate {
func buttonClick(sender:UIButton)
}
Klasse ButtonClass: UIView {
override init(frame: CGRect) {
super.init(frame: frame)
let button=UIButton(frame: CGRectMake(10,50,270,30))
button.setTitle("Click", forState: UIControlState.Normal)
button.backgroundColor=UIColor.blueColor()
button.userInteractionEnabled=true
button.addTarget(self, action: #selector(button_click(_:)), forControlEvents: UIControlEvents.TouchUpInside)
self.addSubview(button)
}
required init?(coder aDecoder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
func button_click(sender:UIButton){
delegate.buttonClick(sender)
}
}
meine Viewcontroller Klasse
Klasse Viewcontroller: UIViewController, ElementDelegate {
override func viewDidLoad() {
let screenSize:CGRect=UIScreen.mainScreen().bounds
let date = TextField(frame: CGRectMake(0,10,screenSize.width,screenSize.height))
self.view.addSubview(date)
let element = Button(frame: CGRectMake(0,70,screenSize.width,screenSize.height))
element.delegate = self
self.view.addSubview(element)
}
}
wenn unter fließendem i erste Textfeld Ansicht zweiten addierten i-Taste Ansicht hinzugefügt, aber wenn ich in Textbox klicken ich nicht zugreifen kann, aber Taste funktioniert gut wenn i-Taste Textbox funktioniert gut entfernen, warum ich nicht beide eine nach der anderen
zugreifen, können Sie mir bitte helfen .....
erstens vielen dank für die antwort ich bin rendering diese textfelder, buttons von xml tags zu bauen ui in meiner ansicht habe ich diese datum und taste nacheinander –
ich versuchte ihren vorschlag seine workin thanq –