Comment faire pour centrer UIButton dans Swift?
J'ai ce code pour mon UIButton
. Que dois-je changer dans mon CGRectMake
pour définir mon UIButton
dans le centre de l'écran pour toutes les tailles d'écran?
let loginBtn = UIButton(frame: CGRectMake(60, 360, 240, 40))
loginBtn.layer.borderColor = UIColor.whiteColor().CGColor
loginBtn.layer.borderWidth = 2
loginBtn.titleLabel!.font = UIFont.systemFontOfSize(24)
loginBtn.tintColor = UIColor.whiteColor()
loginBtn.setTitle("Login", forState: UIControlState.Normal)
self.view.addSubview(loginBtn)
- Je voudrais savoir s'il en codes pas de mise en page automatique
- Vous pouvez faire de l'auto de disposition dans le code. Si vous n'utilisez pas / apprendre la mise en page automatique, alors vous aurez laissé derrière. Trouver un tutoriel sur la mise en page automatique et l'utiliser. 🙂
- il suffit de régler le centre de la vue du centre
- double possible de centrer une étiquette dans une UIView
Vous devez vous connecter pour publier un commentaire.
Pour votre lieu uibutton centre de votre point de vue , la mise à jour de votre cgrectmake comme bleow..
ou
Vous pouvez ajouter une ligne après votre code
Pour Le Bouton D'Inscription :
Définir votre
UIButton
'scenter
au centre de laview
c'est dans.center
propriétéloginBtn.center = view.center
Vous devez ajouter la ligne suivante avant
self.view.addSubview(loginBtn)
.Ce sera le centre de la touche sur l'écran tout entier, et pas seulement la vue, il est dans:
Edit:
Comme @LeoDabus l'a souligné, ce peut être compactée à l'aide de la
midX
etmidY
propriétés surCGRect
:Pour Swift 4
sur le milieu de l'écran (tous les appareils)
OU
sur le centre x et de 25 pour cent, de haut
J'ai trouvé ceci pour être la meilleure solution pour moi..
Swift 4
J'ai découvert que si j'ai besoin de centre des choses assez souvent, j'ai l'habitude d'utiliser une solution générique.
vous pouvez ensuite appeler à partir d'un UIViewcontroller l'intérieur d'une fonction comme ceci: