重複の可能性:
NSNumber を NSString に変換する方法
MainViewController から DetailViewController に文字列を渡すセグエ:
MainViewController.m
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
if ([[segue identifier] isEqualToString:@"DetailSegue"]) {
NSIndexPath *selectedRowIndex = [self.tableView indexPathForSelectedRow];
DetailViewController *detailViewController = [segue destinationViewController];
//Name:
detailViewController.detailName = [[sortedObjects objectAtIndex:selectedRowIndex.row] valueForKey:@"Name"];
//Attempt with number:
detailViewController.detailPopularity = [[sortedObjects objectAtIndex:selectedRowIndex.row] valueForKey:@"Popularity"];
}
}
DetailViewController.h
//Name:
@property (nonatomic, strong) IBOutlet UILabel *nameLabel;
@property (nonatomic, strong) NSString *detailName;
//Attempt with number:
@property (nonatomic, strong) IBOutlet UILabel *popularityLabel;
@property (nonatomic, strong) NSString *detailPopularity;
DetailViewController.m
- (void)viewDidLoad
{
[super viewDidLoad];
//Name:
nameLabel.text = detailName;
//Attempt with number:
popularityLabel.text = detailPopularity;
}
この例では、UILabel に NSNumber を表示できないため、アプリがクラッシュします。NSNumber を NSString に変換してラベルに表示できるようにする方法の例を見る必要があります。さまざまな方法で試しましたが、エラーを修正するための適切な組み合わせが見つかりません..