0

皆さん、ストーリーボードについて助けが必要です。テーブルとビューを含むストーリーボードがあり、セルをクリックしてビューに対してトランザクションを実行したいと考えています。DetalheMeuPostoAmigo を View に設定し、次のコードのように didSelectRowAtIndexPath で呼び出します。

アプリケーションを実行してもエラーは発生しませんが、トランザクションも機能しません。私はアラートでテストし、OKでした。コードを何度も見直しました...

 Top10.m
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{   
   UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil];   
   DetalheMeuPostoAmigo *detalhesMeuPostoAmigoVC = [storyboard instantiateViewControllerWithIdentifier:@"DetalheMeuPostoAmigo"];
   [self.navigationController pushViewController:detalhesMeuPostoAmigoVC animated:YES];
}

絵コンテ画像へのリンク

4

5 に答える 5

2

私はこれに関する専門家ではありませんが、既存のVCを使用してみてください。

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath 
{    
   UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil];    
   YOURCURRENTVC *detalhesMeuPostoAmigoVC = [storyboard instantiateViewControllerWithIdentifier:@"DetalheMeuPostoAmigo"]; 
   [self.navigationController pushViewController:detalhesMeuPostoAmigoVC animated:YES]; 
} 
于 2012-10-03T15:00:56.843 に答える
1

答えはわかりません。しかし、私は過去に同様の問題を抱えていました。self.navigationController == nullかどうかを確認します。nullの場合は、ここで問題が発生します。

ボアソーテ

于 2012-10-03T15:01:51.183 に答える
1

最初の ViewController は NavigationController にありません。

ストーリーボードで TableViewController を選択し、メニューから選択します

エディター -> 埋め込み -> ナビゲーション コントローラー

ここに画像の説明を入力

于 2012-11-20T17:58:35.230 に答える
1

表のセルにセグエを作成してみませんか? テーブル セルを選択し、Ctrl キーを押して矢印をビュー コントローラーにドラッグし、プッシュを選択します。セグエに識別子を与えれば完了です!

コードの問題は、UINavigationController に UITableview が埋め込まれていないことです。「Editor -> Embed In -> Navigation Controller」を選択して埋め込みます。その後、コードが機能するはずです。

参考までに、絵コンテに関するこの記事は素晴らしいです!

于 2012-10-03T15:21:46.627 に答える
0

すべての回答に感謝します。Sérgioのテストの下で、すべてのオプションをテストしましたが、成功しませんでした。

 UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil];

        DetalheMeuPostoAmigo *detalhesMeuPostoAmigoVC = [storyboard instantiateViewControllerWithIdentifier:@"DetalheMeuPostoAmigo"];


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

    if (detalhesMeuPostoAmigoVC == nil) {
        NSLog(@"Is null?"); // Here is not Null

    }
    if (self.navigationController == nil) {
        NSLog(@"Is null?"); // Here is Null

    }
于 2012-10-04T00:53:25.153 に答える