在下图中,使用什么类型的视图来创建“启用提醒”活动指示器?它是带有标签和标准UIActivityIndicator的自定义视图吗?内置的UIKit类?
答案 0 :(得分:4)
正如其他人所说,这是一种自定义视图。幸运的是,一个善良的第三方创建了一个很好的开源实现:
答案 1 :(得分:2)
是的,它是带有标签和标准UIActivityIndicator的视图。
答案 2 :(得分:1)
您不需要自定义视图。像这样完全未经测试的代码会做到这一点:
- (UIView *)busyOverlayViewWithText:(NSString *)text {
UIView *view = [[UIView alloc] initWithFrame:CGRectMake(80, 120, 160, 160)];
view.opaque = NO;
view.clipsToBounds = YES;
view.backgroundColor = [UIColor colorWithWhite:0 alpha:.2];
view.layer.cornerRadius = 8;
UIActivityIndicatorView *spinner = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle: UIActivityIndicatorViewStyleWhiteLarge];
spinner.center = CGPointMake(80, 30);
[spinner startAnimating];
[view addSubview:spinner];
UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(0, 60, 160, 100)];
label.text = text;
label.textColor = UIColor.whiteColor;
label.backgroundColor = UIColor.clearColor;
label.textAlignment = UITextAlignmentCenter;
label.numberOfLines = 0;
label.lineBreakMode = UILineBreakModeWordWrap;
[view addSubview:label];
return view;
}
这是使用ARC。如果使用手动内存管理,则添加(自动)版本。
答案 3 :(得分:0)
这不是一个单独的内置类。相反,它是由以下组成:
如果您想创建类似的东西,那么您可以轻松地将它们全部放在一个类中。