1

IOS 6 、ストーリーボードを使用する XCode 4.6.2

ここに私の問題があります。動的プロトタイプを使用して、7 つのセルを持つテーブルビューがあります。3 番目のセルから別のテーブルビューに移動したいと思います (これにより、ユーザーは国を選択してその国を戻すことができます)。

1つのセルだけがセグエをトリガーするようにこれを設定することは可能ですか?

そうでない場合は、 didSelectRowAtIndexPAth メソッドを使用する必要があると思いますが、ストーリーボードにシークを描画していない場合は、識別子がなく、セグエがないため、 performSegueWithIdentifier を呼び出すことはできません

何をすべきか?

乾杯

サイモン

4

3 に答える 3

2

テーブル内のセル プロトタイプからセグエを描画しないでください。Files Owner代わりに、Table View Controller の下のアイコンから次の Table View Controllerに描画します。それに識別子を与えてから呼び出します

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

tableView:didSelectRowAtIndexPath

于 2013-05-14T13:11:59.763 に答える
0

ビュー コントローラ間にセグエがない場合はpush、UINavigationController のメソッドを使用できます。

2 つのビュー コントローラーの間に既にセグエがある場合は、次のようにします。

-(void)tableView:(UITableView *)aTableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
   if(indexPath.row == yourCellIndex) {
       [self performSegueWithIdentifier:@"yourSegueIdentifier" sender:objectThatYouSendOrNill];
   }
}

テーブル ビュー コントローラーで静的セルを使用している場合は、セグエをセルから目的のビュー コントローラーに直接リンクできます。

于 2013-05-14T12:29:43.910 に答える
0

ストーリーボード自体で DetailViewController を設計できます。そのビュー コントローラーの StoryboardID を指定します。そしてdidSelectRowAtIndexPathで

-(void)tableView:(UITableView *)aTableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
   if(indexPath.row == 3)
  {
    DetailViewController *viewController=[self.storyboard instantiateViewControllerWithIdentifier:@"DetailViewController"];
[self.navigationController pushViewController:viewController animated:YES];
   }
}  

StoryboardIdDetailViewController を次のように指定することを忘れないでくださいDetailViewController

于 2013-05-14T12:43:11.920 に答える