Мне было интересно, как создать пользовательский класс для элемента пользовательского интерфейса (скажем, например, кнопку)?Пользовательский класс UIButton swift
Я читал документы по разработке Apple, и я следовал инструкциям, я думал, что должен создать отдельный файл класса UIButton и связать этот файл класса для всех кнопок на раскадровке.
Вот код отдельного класса UIButton (файл с именем buttonz.swift):
import UIKit
public class buttonz: UIButton {
required public init?(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
self.layer.borderWidth = 1
self.backgroundColor = UIColor.whiteColor()
self.layer.borderColor = UIColor.blackColor().CGColor
}
}
И на раскадровке я связывал эту конкретную кнопку для нового класса UIButton:
Проблема в том, что когда я запускаю симулятор, это дает мне ошибку в консоли debig:
этот класс не является значением ключа кодирования совместимый для ключа aButton
Я думал, что этот процесс был прост в руководстве, но мне не хватает каких-либо дополнительных шагов? Пожалуйста дайте мне знать, спасибо!
Для справки, вот ссылка на документы Apple, которые я использовал в качестве руководства.
Edit 1 - Вот ссылка действие на viewcontroller.swift для контроллера представления. Я просто ctrl + перетащил кнопку из панели рассказов в viewcontroller.swift.
@IBAction func a(sender: AnyObject) {
var alertView = UIAlertView();
alertView.addButtonWithTitle("Ok");
alertView.title = "title";
alertView.message = "message";
alertView.show();
}
Вы пробовали подключения выхода к классу в Interface Builder и назвал его 'aButton', однако класс вы пытались подключить его, чтобы не иметь этого свойства. – nhgrif
Вы также создали пользовательский класс контроллера с свойством 'aButton'? я думаю, вам нужно будет установить класс контроллера просмотра. – nielsbot
попытайтесь удалить модификатор 'public'. –