2012-01-10 48 views
0

我能夠得到書籍的標題列表(tableview),當我選擇書籍時,我想推到書籍細節的新視圖。我是在titleView類的「didSelectRow」還是在DetailView類的「viewWillAppear」中做這件事,如果是的話,我需要做些什麼來獲得語句,3或contentInfo?iphone:如何顯示來自diff的sqlite數據。差異查詢語句。視圖?

數據庫類

(NSArray *) itemsByAuthorID:(NSInteger)authorID { 
     NSMutableArray *retval = [[NSMutableArray alloc] init]; 
     NSString *query; 
     code.... 
     query = [NSString stringWithFormat:@"select * from books where books.author_id = '%i'", authorID]; 
     } 
     code... 
     sqlite3_stmt *statement; 
     if (sqlite3_prepare_v2(_database, [query UTF8String], -1, &statement, nil) == SQLITE_OK){ 
      while (sqlite3_step(statement) == SQLITE_ROW) { 
       int itemID = sqlite3_column_int(statement, 0); 
       int authorID = sqlite3_column_int(statement, 1); 
       char *nameChars = (char *) sqlite3_column_text(statement, 2); 
       char *itemContent = (char *) sqlite3_column_text(statement, 3); 
       NSString *contentTitle = [[NSString alloc] initWithUTF8String:nameChars]; 
       NSString *contentInfo = [[NSString alloc] initWithUTF8String:itemContent]; 
       Item *info = [[Item alloc] initWithItemID:itemID authorID:authorID contentTitle:(NSString *)contentTitle contentInfo:contentInfo]; 
       [retval addObject:info]; 
      } 
      sqlite3_finalize(statement); 
     } 
     return retval; 

回答

0

您可以創建預訂一個私人類,並以書籍的陣列中的所有書籍retrive從數據庫中的數據。

然後,當didSelectRow被調用時,只傳遞Book的對象作爲參數,並在Detail視圖中顯示詳細信息。

+0

這是我的私人類名爲Item看下面的代碼。我可以爲didSelectRow傳遞contentInfo的那個對象嗎? .......... Item * info = [[Item alloc] initWithItemID:itemID authorID:authorID contentTitle:(NSString *)contentTitle contentInfo:contentInfo]; [retval addObject:info]; – merrill 2012-01-11 03:54:29