내 애플 리케이션에서 나는 여러 plist를 다운로드해야합니다. 아이폰은 여러 파일을 다운로드
내가 다운로드가 내가 그것을 해제 경고에 단추를 추가 완료 한 후UIActivityIndicator
와 함께
UIAlertView
를 사용하여 내 코드에서
NSURLconnection
을 사용하십시오 PLIST를 다운로드합니다.
plist를 다운로드하려면 plast가있는 주소로 NSURL
을 설정하고 다음으로 url 캐시 정책과 시간 제한 간격을 사용하여 NSURLRequest
을 설정합니다. 그럼 내 NSMutableData
을 NSURL
연결로 설정하고 NSURLRequest
으로 설정합니다. 델리게이트 didReceiveData
: 나는 데이터를 변경 가능한 데이터 객체에 추가합니다. didFailWithError:
에 오류가 있습니다. 그리고 마지막으로 connectionDidFinishLoading
에서 나는 내 plist 파일을 쓸 수 있도록 내 데이터를 plist에 serialize하고 내 alertview를 릴리스합니다.
내 문제는 : 내 NSURLConnection
이 완료 될 때마다 connectionDidFinishLoading
이 호출되기 때문에 다운로드 할 sevetal 파일이 있으면 어떻게해야합니까? 모든 것이 완료되면 내 UiAlert
을 공개하고 싶습니다. 하지만 첫 번째 plist가 다운로드되면 connectionDidFinishLoading
에있는 내 코드가 실행됩니다. 여기
한 부하 : 내가 요청을 연결을 배치해야합니까 어떻게 내가 didFinishLoading
로 말할 수있는 다른 파일을 todownload 싶다면
// set the UiAlert in the view did load
NSURL *theUrl = [NSURL URLWithString:@"http://adress.com/plist/myPlist.plist"];
NSURLRequest *theRequest = [NSURLRequest requestWithURL:theUrl cachePolicy:NSURLRequestUseProtocolCachePolicy timeoutInterval:60.0];
self.plistConnection = [[ NSURLConnection alloc] initwithRequest:theRequest delegate:self startImmediatly:YES];
//plistConnection is a NSURLConnection
- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data {
[incomingPListData appendData:data];
}
-(void)connection:(NSURLConnection *)connectionDidFailWithError:(NSError *)error {
// handle error here
}
-(void)connectionDidFinisloading:(NSURLConnection *) connection {
NSPropertyListFormat format;
NSString *serialErrorString;
NSData *plist = [NSPropertyListSerialisation propertyListFromData:incomingPlistData mutabilityOption:NSPropertyListImmutable format:&format errorDescription:&serialErrorString];
if (serialErrorString) {//error}
else { // create path and write plist to path}
// change message and title of the alert
모든 파일을 다운로드하면 코드가 실행됩니다. 모든
죄송
환호 도움이 될하지만 난 스마트 폰에있어 – Floo