我有这两个 View ,我想将它们对齐以居中。
self.loadingView = [[UIView alloc] initWithFrame:CGRectMake(75, 155, 120, 120)];
self.loadingView.backgroundColor = [UIColor colorWithRed:0 green:0 blue:0 alpha:0.5];
self.loadingView.clipsToBounds = YES;
self.loadingView.layer.cornerRadius = 10.0;
self.activityView = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleWhite];
self.activityView.frame = CGRectMake(65, 40, self.activityView.bounds.size.width, self.activityView.bounds.size.height);
[self.loadingView addSubview:self.activityView];
loadingView 需要与 iPhone 屏幕居中对齐。这意味着可以支持不同尺寸屏幕的代码。然后 activityView 应该在 loadingView 内居中对齐。
我尝试了一些代码示例,但都没有用。这真的很令人困惑。如果有人可以提供一些代码示例并稍微解释一下它是如何工作的。
编辑1
我写的和你一样,我添加了 self.view.center 部分,但它仍然不在中间?
另外第二个问题是如何在loadingView的CENTER添加indicator view。
最佳答案
- (void)viewDidLoad {
[super viewDidLoad];
self.view.backgroundColor= [UIColor blackColor];
UIActivityIndicatorView * indicator;
indicator = [[UIActivityIndicatorView alloc] init];
indicator.center = self.view.center;
indicator.activityIndicatorViewStyle = UIActivityIndicatorViewStyleWhiteLarge;
[indicator startAnimating];
[self.view addSubview:indicator];
// Do any additional setup after loading the view, typically from a nib.
}
这将在屏幕中央添加事件指示器..
关于ios - 如何对齐 View 和 subview 中心 Objective-C,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28793896/