1

アップデート

DetailViewController *wordDetail = [[DetailViewController alloc] initWithNibName:@"DetailViewController" bundle:nil];
wordDetail.wordWordString = [[NSString alloc] initWithString:[[myArray objectAtIndex:indexPath.row] objectForKey:@"word"]];
wordDetail.wordDefinitionString = [[NSString alloc] initWithString:[[myArray objectAtIndex:indexPath.row] objectForKey:@"definition"]];
wordDetail.title = [[myArray objectAtIndex:indexPath.row] objectForKey:@"name"];

[self performSegueWithIdentifier:@"showDetail" sender:self];

これがセグエの新しい準備です(上記の方法を使用すれば、もう必要ないということですか?またはまったく必要ありませんか?実際、すべての識別子が並んでいるかどうかは確かです...どう思いますか?

-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
if ([[showDetail] isEqualToString:@"showDetail"]) {
NSIndexPath *indexPath = [self.tableView indexPathForSelectedRow];
NSDate *object = _objects[indexPath.row];
[[segue destinationViewController] setDetailItem:object];

私のDetailViewController.mも見ると役立つかもしれません...

-(void)setDetailItem:(id)newDetailItem
{
if (_detailItem != newDetailItem) {
    _detailItem = newDetailItem;

    // Update the view.
    [self configureView];
}

if (self.masterPopoverController != nil) {
    [self.masterPopoverController dismissPopoverAnimated:YES];
}        
}

-(void)configureView
{
//Update the user interface for the detail item.

if (self.detailItem) {
    self.detailDescriptionLabel.text = [self.detailItem description];
}
}


- (void)viewDidLoad
{
    wordWordLabel.text = wordWordString;
    wordDefinitionLabel.text = wordDefinitionString;

    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.
    [self configureView];
}
4

1 に答える 1

1

コードの最初のセクションは問題ありません。ただし、 DetailViewController を作成してからプッシュしています。これは、セグエがないことを意味するため、2 番目のコードはまったく問題になりません。どちらを使用するかを決定する必要があります。

[self.navigationController pushViewController:wordDetail animated:YES];

この行は、viewController をスタックにプッシュします。また

[self performSegueWithIdentifier:@"showDetail sender:self];

showDetail という名前のストーリーボードでセグエを使用します。両方を持つことはできません。選択する必要があります。

ストーリーボード識別子 ストーリーボード識別子

于 2013-03-01T18:24:28.480 に答える