0

私は 1 つから 1 つにセグエしようとしUIViewController (VC1)UITableViewController (VC2)おり、通常の容疑者をすべて試しました。他の投稿では解決策が見つからなかったようです

  1. ストーリーボードで、VC1 から VC2 へのモーダル セグエを作成し、識別子 " VC2Segue" を付けました。

  2. VC1 の接続プロパティをクリックすると、'Storyboard Segue': modal--VC2.

  3. VC2 の接続プロパティをクリックすると、'Referencing Story Board Segue': modal--VC1

  4. VC1 には、UITableViewDelegateVC1 のセル選択に応答するメソッドがあります。これは、詳細ビュー (VC2) に移動しようとする場所です。

    -(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
            [super tableView:tableView didSelectRowAtIndexPath:indexPath];
            [self performSegueWithIdentifier:@"VC2Segue" sender:self];
    

    }

  5. ただし、呼び出されるとすぐにperformSegueWithIdentifier例外が発生します。

    'NSInvalidArgumentException'、理由: 'レシーバー (VC1) には識別子 'VC2Segue' のセグエがありません''

  6. 該当する場合。PFQueryTableViewControllerVC1は、「UITableView」をインスタンス化するように見える外部独自のライブラリ (Parse.com: ) から継承します。したがって、UITableView は Storyboard に TableCells を表示しません。代わりに、VC1 は UITableView のデリゲートであり、VC1 (UIViewController) が上記のメソッドにアクセスする方法です。

接続を 3 回チェックし、テキスト フィールドをカット アンド ペーストし、ストーリーボードのペン先がそれぞれクラス VC1 と VC2 を指していることを確認し、プッシュとモーダルの両方を使い果たしました。明らかに何かが欠けていますが、これは iOS を扱う最初のツアーです。

4

0 に答える 0