我不知道,但自從使用iOS5(現在5.1)和Xcode 4(現在4.3)以來,無論如何每次都會調用ViewDidLoad。我必須從API中獲取JSON輸出,但是如果我將獲取代碼放在ViewDidLoad中,它會被每次調用。所以我的問題是,是否可以/合法(從Appstore的角度來看)使用initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
中的NSURLConnection代碼?initWithNibName中的NSURLConnection?
繼承人的代碼
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
// Custom initialization
jsonContent=[[NSMutableData alloc]init];
stateConnection= [[NSURLConnection alloc]initWithRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:@"MY API"]] delegate:self startImmediately:YES];
}
return self;
}
編輯:它不工作。 NSURLConnection代碼在這個方法中不起作用。所以我應該怎麼做,以便它只被調用一次?
當‘viewDidLoad中’獲取調用,爲什麼不「initWithNibName」被調用?如果你調用「initWithNibName」,那麼只有「viewDidLoad」也會被調用。是不是? – Satyam 2012-03-12 10:07:24
是的,這是真的,但斷點似乎不工作的方法。我是否確保連接只有第一次進行 – 2012-03-12 10:16:34