Comment puis-je modifier l'index alphabétique ou ordre de la pile de UIView?
J'ai empilé un UIView sur le dessus d'un contrôleur existant dans un effort pour créer un calque de dégradé. Cependant, lorsque je charge le point de vue de la nouvelle UIView (naturellement) est au-dessus de tout.
Code:
class ViewController: UIViewController {
@IBOutlet weak var myGradientView: GradientView!
override func viewDidLoad() {
super.viewDidLoad()
}
override func viewDidLayoutSubviews() {
self.myGradientView.gradientWithColors(UIColor.whiteColor(), UIColor.blueColor())
}
}
J'ai fait quelques recherches et j'ai trouvé une réponse Objective-C qui explique à utiliser:
[parentView bringSubviewToFront:afficher];
Je ne sais pas objective-c et je suis assez nouveau à l'Swift, si quelqu'un pouvait briller un peu de lumière sur ce, j'apprécierais.
Ma Question:
Comment puis-je modifier l'index alphabétique ou ordre de la pile d'une UIView dans Swift?
- ce sont deux langues différentes, @Ben
- mon mauvais 😛 Retiré.
- pas de soucis, j'ai besoin d'apprendre à lire Objective-C
Vous devez vous connecter pour publier un commentaire.
Je recommande à la recherche dans le
UIView
la documentation, où sont plusieurs méthodes répertoriées pour la manipulation de la commande de sous-vues:Dans votre situation, vous pourriez essayer:
Alternativement, en raison de la création de la
myGradientView
de l'IB, vous pouvez changer le point de vue de la hiérarchie de changer de points de vue apparaissent sur le dessus. Voici une photo pour illustrer:Espère que ça aide.
la réponse ci-dessus de
bringSubviewToFront(_:)
sendSubviewToBack(_:)
a changé:
Dans Swift 3.0