2012-08-13 170 views
1

當我試圖解析一些奇怪的事情。解析.plist項目

我指望我的項目與

NSString *bundlePathofPlist = [[NSBundle mainBundle]pathForResource:@"Mything" ofType:@"plist"]; 

    NSDictionary *dict = [NSDictionary dictionaryWithContentsOfFile:bundlePathofPlist]; 

     NSArray *dataFromPlist = [dict valueForKey:@"some"]; 

     NSMutableArray *data = [NSMutableArray array]; 
    for(int i =0;i<[dataFromPlist count];i++) 
    { 
     //NSLog(@"%@",[dataFromPlist objectAtIndex:i]); 
     [data addObject:[NSNumber numberWithInt:[dataFromPlist count]]]; 
    } 
    [self setTableData:data]; 

     NSLog(@"%@", tableData); 

然後:

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section { 

    return [tableData count]; 
} 

這個偉大的工程,但隨後在- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {

我試圖

NSString *bundlePathofPlist = [[NSBundle mainBundle]pathForResource:@"Mything" ofType:@"plist"]; 

NSDictionary *dict = [NSDictionary dictionaryWithContentsOfFile:bundlePathofPlist]; 

NSArray *dataFromPlist = [dict valueForKey:@"some"]; 


NSLog(@"%@", dataFromPlist); 

cell.Data.text = [NSString stringWithFormat:@"%@", dataFromPlist]; 

return cell; 

但輸出是:

2012-08-13 23:08:48.130 [30278:707] (
    Yeah, 
    Trol, 
    LOL, 

) 

而且在我的TableCell也顯示爲

(
     Yeah, 
     Trol, 
     LOL, 

    ) 
+0

什麼奇怪? – 2012-08-13 21:17:59

+0

'( 呀, TROL,LOL , )'在一個小區就需要顯示在每一個單元@ H2CO3 – Frenck 2012-08-13 21:20:42

回答

1

所以你有

(yeah, trol, lol) 

...在一個小區內,對不對?現在,這很自然。如果您已閱讀NSLog'sNSString's文檔,您會發現格式說明符調用對象的描述方法,而對於NSArray對象,該方法又是一個相加的括號,用逗號分隔......再次列出對象的描述。

你可能想要的是

cell.Data.text = [dataFromPlist objectAtIndex:indexPath.row]; 
+0

@Daniel信任我,括號是罰款(反正我喜歡美國英語談論它時) 。 – 2012-08-13 21:36:50

+1

髮型的意見。從英國來看,它只是我一直正確的東西,如果代碼格式化在那裏,就不會做。 – Daniel 2012-08-13 21:38:46

+0

@Daniel別擔心。 :) – 2012-08-13 21:41:21