我的sqlite数据库中有2035对象。我正试图在表格视图中显示它们。我正在使用此代码向NSMutablearray
添加对象。
FMResultSet *rs = [database executeQuery:@"SELECT name,tel1 FROM KartDB"];
KartList *kart = [[KartList alloc] init];
while ([rs next]) {
kart.name = [rs stringForColumn:@"name"];
kart.tel1 = [rs stringForColumn:@"tel1"];
[_customers addObject:kart];
}
我把断点放在[_customers addObject:kart];
行。它在每个循环中替换所有值。我需要什么。
谢谢。
您每次都使用相同的kart
对象,并更改其值并添加到数组中,它将始终添加相同的对象,最后您将拥有2035次具有最新值的相同对象,
必须为每行创建kart
对象
FMResultSet *rs = [database executeQuery:@"SELECT name,tel1 FROM KartDB"];
while ([rs next]) {
// Inside loop
KartList *kart = [[KartList alloc] init];
kart.name = [rs stringForColumn:@"name"];
kart.tel1 = [rs stringForColumn:@"tel1"];
[_customers addObject:kart];
}