2013-10-18 43 views
-2

在我的應用程序中,im顯示UIListView上的對象列表。 (MasterViewController.m)如何將數據從MasterView發送到DetailView

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath 
{ 
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"Cell"]; 
    ObrasData *obra = [self.arrObras objectAtIndex:indexPath.row]; 
    cell.textLabel.text = obra.descripcion; 
    return cell; 
} 

進出口試圖示出了從對象的所有數據,在此情況下,IM只有加載一個字段來測試應用程序。 (DetailViewController.m)

- (void)configureView 
{ 
    // Update the user interface for the detail item. 

    if (self.detailItem) { 
     self.NombreObra.text = [self.detailItem description]; 
    } 
} 

當我去到了的DetailView,我得到了在標籤下面的文字 - >

<ObrasData: 0x892b4b0> 

那麼,什麼是從加載所有數據的最佳方式物體?這裏是我加載陣列的地方:

ObrasData *obra1 = [[ObrasData alloc] initWithID:[NSNumber numberWithInt:1] presupuesto:@"100" description:@"obra de prueba" aasm_state:@"En proceso" clienteID:@"dm2"]; 

    NSMutableArray *arrObras = [NSMutableArray arrayWithObjects:obra1, nil]; 
    UINavigationController *navController = (UINavigationController *) self.window.rootViewController; 
    MasterViewController *masterController = [navController.viewControllers objectAtIndex:0]; 
    masterController.arrObras = arrObras; 

感謝您的幫助。

+0

你是什麼意思'加載對象的所有數據'?加載它在哪裏?你想在你的'detailItem'中添加數字和字符串到屏幕上?創建一些UI並訪問'ObrasData'的屬性。 – Wain

+0

我已經創建了一個UITextView,問題是文字顯示:ObrasData:0x892b4b0 – MidouCloud

回答

1

「description」是NSObject上的一個方法,它返回對象的文本描述,你看到的是默認實現(它只是輸出地址)。

這意味着您沒有實現的方法會覆蓋「description」來返回其他內容。

沒有看到ObrasData的實現是什麼樣子,很難引導你更多。

編輯,看到了實現,我看到你有一個名爲「descripcion」(用西班牙語),你初始化在init方法的屬性。我想那麼你真的想這樣做:

[self.detailItem descripcion] 

如果,另一方面,你真的想描述整個對象,那麼你需要重寫例如描述方法

- (NSString *)description 
{ 
    return [NSString <create your description yourself here>]; 
} 
+0

在這個問題im即顯示的實現:[鏈接](http://stackoverflow.com/questions/19445190/incompatible-pointer-to-整數 - conversion-xcode-show-object-on-a-listvew/19445374?noredirect = 1#19445374),謝謝 – MidouCloud

相關問題