電話からのすべての連絡先を格納する配列があります。すべての連絡先を表示したい UITableView があります。テーブルビューでそれらを表示するのに問題がありました oi は新しい配列を作成し、以下のコードを使用して連絡先配列をループし、そこから文字列を取得して新しい配列 (contactsNew) に保存しました
for (CNContact *contact in contacts)
{
NSString *string = [formatter stringFromContact:contact];
[contactsNew addObject:string];
NSLog(@"contact = %@", string);
}
問題は、すべての連絡先がログに表示されることですが、それでも連絡先を表形式で表示できません。
- (NSInteger)tableView:(UITableView *)tableView
numberOfRowsInSection:(NSInteger)section
{
return [contactsNew count];
}
- (UITableViewCell *)tableView:(UITableView *)tableView
cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *simpleTableIdentifier = @"SimpleTableCell";
UITableViewCell *cell = [tableView
dequeueReusableCellWithIdentifier:simpleTableIdentifier];
if (cell == nil) {
cell = [[UITableViewCell alloc]
initWithStyle:UITableViewCellStyleDefault
reuseIdentifier:simpleTableIdentifier];
}
cell.textLabel.text = [contactsNew objectAtIndex:indexPath.row];
return cell;
}
「string」変数の値と、contactsNew 配列に追加される数と内容を確認しましたが、すべて問題ないようです。
また、代わりに何か他のものを使用できますか:
cell.textLabel.text = [contactsNew objectAtIndex:indexPath.row];
新しい配列を作成する代わりに、連絡先配列を直接使用できるようにします。前もって感謝します。