テーブルビューを作成するために必要な実際の値をNSMutableArrayに渡して、NSViewのデータソースをNSArrayからNSMutableArrayに変更するとエラーが発生します。NSMutableArrayエラーからのUITableViewの設定
エラー:-74 2012-03-06 12:長い は、33:27:58.380 X [606:FB03] - [__ NSCFNumber isEqualToString:]:であるLAT
未認識セレクタに送信インスタンス0x6b64280 2012-03-06 12:27:58.381 X [606:FB03] *によりキャッチされない例外 'NSInvalidArgumentException'、理由にアプリを終了: ' - [__ NSCFNumber isEqualToString:]:未認識セレクタインスタンス0x6b64280に送ら'
元の方法で私はself.measurementを設定していて、self.subinfoはコメントアウトされています。
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath: NSIndexPath *)indexPath
{
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"MeasurementCell"];
switch (indexPath.section)
{
case kMeasurement:
cell.textLabel.text=[self.measurements objectAtIndex:indexPath.row];
cell.detailTextLabel.text=[self.subinfo objectAtIndex:indexPath.row];
break;
default:
[email protected]"Unkown";
}
return cell;
}
- (void)viewDidLoad
{
appdelegate = [[AppDelegate alloc]init];
//get lat
NSArray* fmArray = [appdelegate fetchEvents:@"Field_Measurement"];
NSMutableArray* latBindArray = [[NSMutableArray alloc]init];
NSMutableArray* longBindArray = [[NSMutableArray alloc]init];
for (Field_Measurement *fm in fmArray)
{
[latBindArray addObject:fm.latitude];
NSLog(@"lat is: %@", fm.latitude);
}
for (Field_Measurement *fm in fmArray)
{
[longBindArray addObject:fm.longitude];
NSLog(@"long is: %@", fm.longitude);
}
self.measurements = latBindArray;//[[NSArray alloc]initWithObjects:@"03/05/2012 @ 15:12", @"03/05/2012 @ 11:11", nil];
self.subinfo = latBindArray;//[[NSArray alloc]initWithObjects:@"Beta: 0.0234",@"Alpha: 3.977", nil];
[super viewDidLoad];
}
これが私の最初のテーブルビューの試み(とObjective-Cのすべて一緒に新しい)とても参考になるNSMutableArrayのからテーブルビューを移入する方法の任意のアイデアです。私はsqliteデータベースを持っているので、私はこれらのレコードを引き出しています。
おかげ
、私はそれが鋳造問題だった考え出したが.textセクションがクリックされなかったいくつかの理由のために:限り配列(これはあなたの配列がmyTableViewDataと呼ばれていると仮定し)からテーブルビューを取り込むよう
。アロンに感謝 – BamBamBeano