0
在我的iphon應用程序中,我正在從sqlite數據庫讀入NSMutableArray * sales,並且想要將銷售數據分配給TableView中的單元格。 我該怎麼辦?如何將對象分配給TableView中的單元格?
這裏是我的代碼: 在控制器:
- (UITableViewCell *) tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
UITableViewCell *result = nil;
if ([tableView isEqual:self.myTableView]){
static NSString *TableViewCellIdentifier = @"MyCells";
result = [tableView dequeueReusableCellWithIdentifier:TableViewCellIdentifier];
if (result == nil){
result = [[UITableViewCell alloc]
initWithStyle: UITableViewCellStyleSubtitle reuseIdentifier:TableViewCellIdentifier];
}
AppDelegate *appDelegate = (AppDelegate *)[[UIApplication sharedApplication] delegate];
[appDelegate readSalesFromDatabase];
// ***here is where I'm trying to retrive the data***
// when I run the simulator, at this point I receive 'SIGABRT'
=====> result = [sales objectAtIndex:indexPath.row];
}
return result;
}
在代表:
-(void) readSalesFromDatabase {
if(sqlite3_open([databasePath UTF8String], &database) == SQLITE_OK) {
// Setup the SQL Statement and compile it for faster access
const char *sqlStatement = "select us.userID from UsersSale us order by us.saleID";
sqlite3_stmt *compiledStatement;
if(sqlite3_prepare_v2(database, sqlStatement, -1, &compiledStatement, NULL) == SQLITE_OK) {
// Loop through the results and add them to the feeds array
while(sqlite3_step(compiledStatement) == SQLITE_ROW) {
// Read the data from the result row
NSInteger auserID = sqlite3_column_int(compiledStatement, 0);
// Create a new Sale object with the data from the database
SelectFromList *sfl = [[SelectFromList alloc] initWithName:auser];
// ***here is where I'm inserting the data to NSMutableArray *sales **
[selectFromListController.sales insertObject:sfl atIndex:count];
[sfl release];
}
}
// Release the compiled statement from memory
sqlite3_finalize(compiledStatement);
}
sqlite3_close(database);
} @end
謝謝。我會嘗試。 – heziflash 2012-03-17 09:13:58
它的工作原理。再次感謝你 – heziflash 2012-03-18 08:58:28