Vous souhaitez simplifier au maximum les restrictions de la mise en page automatique. En chargeant Xib dans View, les contraintes de ViewController sont simplifiées! Et simplifier.
Tout d'abord, placez la vue dans sampleViewController.Xib
.
Après avoir placé la vue comme ceci, créez le fichier Swift et le fichier Xib de la vue.
Fichier Swift Afficher le fichier Xib
Utilisons le même nom de fichier! !! (Cette fois, nommé sampleHomeView)
Écrivez le code dans sampleHomeView.swift
. C'est OK avec le copier-coller.
sampleHomeView.swift
import UIKit
class sampleHomeView: UIView {
override init(frame: CGRect) {
super.init(frame: frame)
loadView()
}
required init?(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
loadView()
}
private func loadView() {
let className = String(describing: type(of: self))
let view: UIView = Bundle.main.loadNibNamed(className, owner: self, options: nil)?.first as? UIView ?? UIView()
view.frame = bounds
addSubview(view)
}
}
En écrivant ce code, vous pouvez définir la classe du propriétaire du fichier et la charger dans View.
Sélectionnez le propriétaire du fichier dans sampleHomeView.Xib
et définissez Class sur sampleHomeView.
Placez ensuite les éléments de l'interface utilisateur dans sampleHomeView.Xib
. (Placez le bouton cette fois)
Ensuite, définissez sampleView.Xib
.
Sélectionnez la vue que vous avez placée en premier et définissez la classe de CustomClass sur sampleHomeView.
Vous pouvez maintenant charger Xib dans View.
Cependant, dans cet état, nous ne savons pas qu'il est chargé dans View, alors construisons-le! !!
Vous pouvez le charger avec ceci (^ ^) En faisant cela, il semble que la disposition des parties de l'interface utilisateur puisse être simplifiée.
Recommended Posts