Ios 如何将UIActivityMonitor添加到界面?

Ios 如何将UIActivityMonitor添加到界面?,ios,uiwebview,uiactivityindicatorview,Ios,Uiwebview,Uiactivityindicatorview,我有一个包含UIWebView的视图控制器。我想在右上角显示一个活动指示器,以便用户知道网页正在加载;但是,在生成和运行时,活动监视器不显示 我有一个名为webView的UIWebView出口和一个名为activityIndicator的UIActivityIndicator视图出口 以下是我的实现: - (void)viewDidLoad { [super viewDidLoad]; webView.delegate=self; [self.view addSubvie

我有一个包含UIWebView的视图控制器。我想在右上角显示一个活动指示器,以便用户知道网页正在加载;但是,在生成和运行时,活动监视器不显示

我有一个名为webView的UIWebView出口和一个名为activityIndicator的UIActivityIndicator视图出口

以下是我的实现:

- (void)viewDidLoad
{
    [super viewDidLoad];
    webView.delegate=self;
    [self.view addSubview:activityIndicator];
    NSString *fullURL = @"http://www.oncologyeducation.com"; NSURL *url = [NSURL URLWithString:fullURL]; NSURLRequest *requestObj = [NSURLRequest requestWithURL:url]; 
    [webView loadRequest:requestObj];
}

- (void)viewDidUnload
{
    [self setWebView:nil];
    [self setActivityIndicator:nil];
    [self setActivityIndicator:nil];
    [super viewDidUnload];
}

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
    if (interfaceOrientation==UIInterfaceOrientationPortrait || interfaceOrientation==UIInterfaceOrientationPortraitUpsideDown) {
        return NO;
    } else {
        return YES;
    }
}

- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType {
    return YES;
}

-(void) webViewDidStartLoad:(UIWebView *)webView{
    NSLog(@"load started");
    [activityIndicator startAnimating];
    activityIndicator.hidden = NO;
}

-(void) webViewDidFinishLoad:(UIWebView *)webView{
    NSLog(@"load finished");
    [activityIndicator stopAnimating];
    activityIndicator.hidden = YES;
}

-(void) webView:(UIWebView *)webView didFailLoadWithError:(NSError *)error{
    [activityIndicator stopAnimating];
    activityIndicator.hidden = YES;
}
@end

在我的故事板上,我有一个连接到文件所有者的活动指示器视图。谢谢你的建议

@CodaFi-你说得对,那没有必要。无需添加子视图

任何想重复使用代码的人都会失去这句话:

[self.view addSubview:activityIndicator]; 

结果证明xCode的行为有点古怪,在编译时将错误的故事板复制到项目中。我重新命名了我的故事板,在项目设置中将其设置为新名称,指示器高兴地旋转起来

activityIndicator是否已添加到当前视图中?为什么要对UIActivityIndicatorView使用NIB和-addSubview调用?@CodaFi-没错,这是不必要的。无需添加子视图。任何想要重用代码的人,都会丢失一行:[self.view addSubview:activityIndicator];结果证明xCode的行为有点古怪,在编译时将错误的故事板复制到项目中。我重新命名了我的故事板,在项目设置中将其设置为新名称,指示器高兴地旋转起来!把这个评论作为答案,这样就不会出现在“没有答案”一栏中。