尽管有很多步骤很容易忘记,但这是可能的。在努力让自己工作 4 小时后,我想出了以下解决方案。
1 - 像其他任何东西一样创建一个视图控制器。
头文件
#import "DDBaseViewController.h"
@interface DDHomeSearchLoadingViewController : UIViewController
@end
实施文件
#import "DDHomeSearchLoadingViewController.h"
@interface DDHomeSearchLoadingViewController ()
@property (weak, nonatomic) IBOutlet UIActivityIndicatorView *activityMonitor;
@property (weak, nonatomic) IBOutlet UIView *modalView;
@end
@implementation DDHomeSearchLoadingViewController
#pragma mark - UIViewController lifecycle
- (void)viewDidLoad
{
[super viewDidLoad];
[self setupUI];
}
-(void) setupUI
{
[self makeRoundedCorner:self.modalView AndCornerRadius:6.0f];
[self.activityMonitor startAnimating];
}
-(void) makeRoundedCorner:(UIView*) view AndCornerRadius:(float) cornerRadius
{
[view.layer setCornerRadius:cornerRadius];
[view.layer setMasksToBounds:YES];
}
@end
2 - 将您的容器视图背景颜色设置为 ClearColor
3 - 添加一个 UIView,它将像覆盖一样呈现
4 - 添加一个 UIView,它将像一个对话框一样呈现在覆盖 UIView 上
添加/移动它时,请确保它位于覆盖视图之外。出于某种原因,当您使用鼠标移动它时,它会自动添加到覆盖 UIView 中。(说实话真烦人)
5 - 为您创建的视图设置 Storyboard ID
6 - 最后在你不想调用它的地方添加这段代码(假设它也是一个 UiViewController )
DDHomeSearchLoadingViewController* ddHomeSearchLoadingViewController = [[UIStoryboard storyboardWithName:@"Main" bundle:nil] instantiateViewControllerWithIdentifier:@"DDHomeSearchLoadingViewController"];
self.navigationController.modalPresentationStyle = UIModalPresentationCurrentContext;
[self presentViewController:ddHomeSearchLoadingViewController animated:YES completion:nil];
我希望它可以帮助你们
干杯