Нативная разработка мобильных приложений


Как использовать свое представление



Download 3,69 Mb.
Pdf ko'rish
bet50/228
Sana21.07.2022
Hajmi3,69 Mb.
#834838
1   ...   46   47   48   49   50   51   52   53   ...   228
Bog'liq
Нативная разработка мобильных приложений

Как использовать свое представление
Чтобы использовать свое представление, не требуется больших усилий:
class SomeViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
let clickMeButton =
SomeView(frame: CGRect(x: 0.0, y: 0.0, width: 100.0, height: 50.0),
buttonText: "Click Me!")
view.addSubview(clickMeButton)
}
}
Этот код создает новый контроллер, новый экземпляр представления и до
-
бавляет его в контроллер. Как видите, все просто!
С другой стороны, добавить экземпляр кнопки можно с помощью Interface 
Builder. В раскадровку или файл XIB добавьте новый объект представления 
из библиотеки. Затем в инспекторе идентичности выберите для объекта свой 
класс представления 
SomeView
.
Уже неплохо, но можно сделать еще лучше, используя флаги 
@IBInspectable
и 
@IBDesignable
, относящиеся к Interface Builder. Эти флаги позволяют Interface 
Builder настраивать и отображать представление так, будто оно отображается 
в работающем приложении.
Для этого нужно декорировать класс представления этими флагами:
@IBDesignable class SomeView: UIView {
@IBInspectable var buttonText: String = "Click Me!" {
didSet {
button.titleLabel?.text = self.buttonText
}
}
lazy var button: UIButton = {


iOS 

71
let button = UIButton(type: .custom)
addSubview(button)
return button
}()
required init?(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
setupView()
}
override init(frame: CGRect) {
super.init(frame: frame)
setupView()
}
convenience init(frame: CGRect, buttonText: String) {
self.init(frame: frame)
self.buttonText = buttonText
}
private func setupView() {
backgroundColor = .red
button.titleLabel?.text = buttonText
}
}
Теперь, вернувшись в раскадровку или представление, вы увидите в инспек
-
торе атрибутов новое поле 
Button Text
, в которое можно вписать свой текст 
для отображения на кнопке. Если изменить его, Interface Builder обновит текст 
кнопки, отображаемый на экране (см. рис. 3.1)!
Рис. 3.1 

Пользовательское представление
с редактируемыми полями в Interface Builder


72

Пользовательские компоненты
Interface Builder, UIKit и Xcode – это мощная комбинация инструментов. 
С их помощью можно создавать любые представления и их вариации – един
-
ственным ограничением является ваше воображение. Возможности настолько 
обширны, что их не получится перечислить в единственной главе книги. За 
дополнительной информацией мы, как обычно, советуем обратиться к доку
-
ментации для разработчиков 
UIView
(
https://oreil.l
y/QtOVC
).

Download 3,69 Mb.

Do'stlaringiz bilan baham:
1   ...   46   47   48   49   50   51   52   53   ...   228




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish