ich weiß, das ist eine sehr häufige Frage, ich lese die meisten Fragen in stackoverflow gestellt, aber immer noch nicht herausfinden, wie Sie die uiactivityindicatorview aus der Sicht entfernen. bitte unter dem Code findeniphone - uiactivityindicatorview versteckt sich nicht
@implementation FeedBackViewController
@synthesize m_activity,webView;
-(void)viewDidLoad{
[super viewDidLoad];
[webView loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:@"http://equinox.library.pitt.edu/limesurvey/index.php?sid=87435&lang=en"]]];
}
- (void)dealloc {
[m_activity release];
[webView release];
[super dealloc];
}
- (void)webViewDidFinishLoad:(UIWebView *)webView {
[UIApplication sharedApplication].networkActivityIndicatorVisible = NO;
[m_activity stopAnimating];
[m_activity removeFromSuperview];
m_activity = nil;
}
- (void)webViewDidStartLoad:(UIWebView *)webView {
NSLog(@"in webViewDidFinishLoad")
[UIApplication sharedApplication].networkActivityIndicatorVisible = YES;
m_activity.center = self.view.center;
[self.view addSubview: m_activity];
[m_activity startAnimating];
}
die Header-Datei
@interface FeedBackViewController : UIViewController<UIWebViewDelegate>{
IBOutlet UIWebView *webView;
IBOutlet UIActivityIndicatorView *m_activity;
}
@property (nonatomic, retain) IBOutlet UIWebView *webView;
@property (nonatomic, retain) UIActivityIndicatorView *m_activity;
Auch ich habe die Box in der IB überprüft, die sagt, verstecken, wenn gestoppt. Ich setze NSLog(@"in webViewDidFinishLoad")
in der webViewFinishLoad Methode, scheint, dass es diese Methode aus irgendeinem Grund nicht trifft. und für
NSLog(@"m_activity = %@",m_activity);
im viewDidLoad Methode, gibt es eine Meldung, wie unten in der Konsole
> m_activity = <UIActivityIndicatorView:
> 0x4d3d920; frame = (150 79; 20 20);
> hidden = YES; opaque = NO; autoresize
> = RM+BM; layer = <CALayer: 0x4d35ce0>>
Randbemerkung: Sie rufen sollen 'release' auf' m_activity', bevor es zu 'nil' Einstellung . – donkim