저는 그림이 게시물에 첨부되어 있는지를 결정하고 배열로 저장하는 iPhone 용 Facebook Feed App에서 작업하고 있습니다. 코드를 실행할 때, NSLog는 objectAtKey가 있는지 여부를 읽는 중이지만 배열에 입력되는 것이 아무것도 없다고 알려줍니다. @ "picture". 다음은 제 코드 중 일부입니다. MasterView.m에서iOS : 배열에 문자열을 저장할 수 없습니다.
:
//create array containing individual "datas"
NSArray *items = [json objectForKey:@"data"];
for(NSDictionary *item in items)
{
// store message in ItemStore sharedStore
if([item objectForKey:@"message"] || [item objectForKey:@"message"] != nil ||
[[item objectForKey:@"message"] length] > 0){
[[JSONFeedItemStore sharedStore] createItem:[item objectForKey:@"message"]];
}
//
if([item objectForKey:@"picture"]){
[[JSONFeedItemStore sharedStore] createPicture:[[item objectForKey:@"picture"] description]];
NSLog(@"url: %@", [item objectForKey:@"picture"]);
} else {
[[JSONFeedItemStore sharedStore] createPicture:@"http://i.imgur.com/TpIK5.png"]; // blank
NSLog(@"creating blank picture");
}
}
ItemStore.m
- (void)createPicture:(NSString *)pictureUrl
{
[pictures addObject:pictureUrl];
NSLog(@"Number: %d, URL: %@", [pictures count], [pictures objectAtIndex:[pictures count]]);
}
내 콘솔에서이
2012-08-07 08:21:54.153 JSONFeed[2502:f803] Number: 0, URL: (null)
2012-08-07 08:21:54.154 JSONFeed[2502:f803] creating blank picture
2012-08-07 08:21:54.155 JSONFeed[2502:f803] Number: 0, URL: (null)
2012-08-07 08:21:54.156 JSONFeed[2502:f803] creating blank picture
2012-08-07 08:21:54.157 JSONFeed[2502:f803] Number: 0, URL: (null)
2012-08-07 08:21:54.157 JSONFeed[2502:f803] url: http://photos-a.ak.fbcdn.net/hphotos-ak-ash4/423482_427478620624383_82270372_s.jpg
2012-08-07 08:21:54.158 JSONFeed[2502:f803] Number: 0, URL: (null)
2012-08-07 08:21:54.158 JSONFeed[2502:f803] creating blank picture
SharedStore는 메시지를 저장하기 위해 만든 ItemStore 클래스의 일부이다 Facebook 게시물의 사진 질문이 있거나 더 많은 코드를 볼 필요가 있으면 언제든지 물어보십시오. 저는 여전히 Apps 프로그래밍에 익숙하지 않기 때문에 개선을위한 제안도하고 있습니다.
'createPicture'를 호출 할 때 왜 [itemOFForKey : @ "picture"]'대신 [[[object objectForKey : @ "picture"] description]'를 보냅니 까? –
추가 브래킷은 해당 객체에 대한 설명을 호출하기 때문입니다. 이 호출의 나머지 부분은 [[item objectForKey : @ "picture"] description]입니다. – Chance
나는 왜 여분의 괄호가 있는지 알고 있지만 왜'description'을 사용해야합니까? –