在UIImageView中居中UIActivityIndi​​catorView

Was*_*sim 5 xcode objective-c uiimageview uiactivityindicatorview

我已经创建了一个自定义子类,UIImageView在一种方法中我想在图像加载时向中心添加一个活动指示器.我正在使用以下代码,但活动监视器位于以外的位置UIImageView.我该怎么做才能将它完全置于中心的范围内UIImageView

UIActivityIndicatorView *indicator = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleGray];

indicator.autoresizingMask =
UIViewAutoresizingFlexibleTopMargin |
UIViewAutoresizingFlexibleRightMargin |
UIViewAutoresizingFlexibleBottomMargin |
UIViewAutoresizingFlexibleLeftMargin;

indicator.center = self.center;

[self addSubview:indicator];    
[indicator startAnimating];
Run Code Online (Sandbox Code Playgroud)

Vla*_*mir 15

centerproperty是其superview的坐标空间中的view的坐标.因此,您需要在imageView的坐标空间中设置指标的坐标.正确的方法是:

indicator.center = CGPointMake(CGRectGetMidX(self.bounds), CGRectGetMidY(self.bounds));
Run Code Online (Sandbox Code Playgroud)