Obtenez au centre de toute UIView en Swift

Je suis en train d'écrire une fonction globale qui ajoute un activityIndicator à tout point de vue (surtout imageViews si) par l'appel de cette fonction.

La fonction que j'ai droit est constitué de:

public func addActivityIndicatorToView(activityIndicator: UIActivityIndicatorView, view: UIView){

    //activityIndicator configuration ...
    activityIndicator.center = view.center
    view.addSubview(activityIndicator)
    activityIndicator.startAnimating()
}

Mais je ne suis pas le centre de la vue pour une raison quelconque.

J'ai aussi essayé différentes solutions autour de AFIN de et Google, mais aucune n'a fonctionné jusqu'à maintenant.

Est-il un moyen d'obtenir le point central et le jeu de la activityIndicator à tout UIView?

Si aucune des solutions dans @EmilioPelaez réponse, je voudrais vous suggérons de vérifier la taille de votre point de vue. Dans la méthode qui êtes-vous du réglage de l'indicateur d'activité du centre?
Dans une classe, qui contient toutes les méthodes partagées à travers le projet
Vous pourriez être le réglage de la position de la activityIndicator avant l'affichage de l'image a été correctement paramétré (en viewDidLoad par exemple)...
println("activityIndicator.center before = \(activityIndicator.center.x) x \(activityIndicator.center.y)") activityIndicator.center = view.center println("activityIndicator.center after = \(activityIndicator.center.x) x \(activityIndicator.center.y)") montrent que le centre ont changé. Je pense à propos de l'actualisation de problèmes, pas de centrage.

OriginalL'auteur Phillip | 2015-05-12