Ich versuche, eine Reihe von customClass-Schaltflächen zu meiner Ansicht automatisch hinzuzufügen, basierend auf der Größe eines Arrays.Prog erstellt Schaltflächen aus der Klasse nicht angezeigt - Swift IOS
Die Klasse erstellt und die entsprechende Methode in der Klasse aufgerufen, aber nichts wird angezeigt. Das Debuggen sagt mir, dass die Methode wie erwartet aufgerufen/ausgeführt wird (3x).
Wenn ich die Funktion direkt zum View-Controller hinzufüge, funktioniert es.
Was fehlt mir hier ???
Viewcontroller Code:
import UIKit
class ViewController: UIViewController {
let userArray: [String] = ["One","Two","Three"]
override func viewDidLoad() {
super.viewDidLoad()
for item in userArray {
CustomCheckBox().showNewButton()
}
}
.. Other stuff...
}
Custombutton Klassencode:
{
import UIKit
class CustomCheckBox: UIButton {
let checkedImage: UIImage = UIImage(named:"chckbox_on")!
let uncheckedImage: UIImage = UIImage(named: "chckbox_off")!
var newButton: CustomCheckBox!
..... other functions (isChecked, buttonClicked, ..)
func showNewButton(){
newButton = CustomCheckBox (type: UIButtonType.Custom)
newButton.bounds = CGRect(x: 0, y: 0, width: 45, height: 45)
newButton.center = CGPoint(x: 40, y: 40)
newButton.addTarget(newButton, action: #selector(CustomCheckBox.buttonClicked(_:)), forControlEvents: UIControlEvents.TouchUpInside)
newButton.isChecked=false
self.addSubview(newButton)
}
}
Eigentlich hier 'self.addSubview (Schaltfläche Neu)' Sie hinzufügen Ihre 'newButton' innerhalb der Schaltfläche Sie erstellen. Vielleicht möchten Sie also ein Argument haben, wo Sie eine 'UIView' zum Einfügen in oder in Ihren' ViewController' geben können. Sie fügen Ihre neu erstellte Schaltfläche manuell hinzu. – Zico