これが私のセットアップです。radiostations というオブジェクトがあり、callsign、宣言された周波数、amStationInfo という名前の NSMutableArray などの文字列がいくつかあります。ビューコントローラーで、配列にデータを入力するSQLiteデータベースにアクセスします...
radiostations.h
@interface radiostations : NSObject {
NSString *format;
NSString *city;
}
@property (nonatomic, retain) NSString *format;
@property (nonatomic, retain) NSString *city;
ViewController.m
radiostations *amStationClass = [[radiostations alloc] init];
NSMutableArray* amStationInfo = [[NSMutableArray alloc] init];
while (sqlite3_step(statement) == SQLITE_ROW)
{
NSString *cityField = [[NSString alloc] initWithUTF8String:
(const char *) sqlite3_column_text(statement, 10)];
NSString *formatField = [[NSString alloc] initWithUTF8String:
(const char *) sqlite3_column_text(statement, 0)];
[amStationInfo addObject:amStationClass];
[amStationClass setCity:cityField];
[amStationClass setFormat:formatField];
}
[tabView reloadData];
sqlite3_finalize(statement);
そして、UITableViewにデータを入力します
NSString *cityValue = [(radiostations *)[amStationInfo objectAtIndex:indexPath.row] city];
NSString *formatValue = [(radiostations *)[amStationInfo objectAtIndex:indexPath.row] format];
cityLabel.text = cityValue;
formatLabel.text = formatValue;
最初はいくつかの配列を扱っていましたが、これはうまくいきました。次に、クラスオブジェクトを使用して1つの配列のみを処理するように変更しましたが、現在は機能していません。私はSQLiteクエリと何が機能しないかを知っているので、問題はありません。配列にデータが取り込まれていないようです。