1

初めてストーリーボードを使用しています。

ここに写真があります:

画像1

私のアプリは TabBar アプリケーションです。「メイン」画面から、Navigation Controllerに埋め込んだSettingsViewControllerに接続したい設定ボタンがあります(そのように続行する必要があるため、設定画面の他の部分に)。

他の写真:

画像2

今:設定ボタン(コマンド+コントロールドラッグ)をコントローラー(モーダルセグエ)=クラッシュに接続しようとしました。設定コントローラー(モーダルセグエ)=クラッシュを接続しようとしました。

プログラムで試してみました:設定ボタンの IBAction を作成し、設定 VC を呼び出しますが、それもクラッシュします。

注: このアプリにはさらに多くの画面がありますが、すべて正常に動作します。アプリをクラッシュさせているのは、設定 VC への接続だけです。

どんなアイデアでも大歓迎です。

エラーログは次のとおりです。

画像3

4

2 に答える 2

2

したがって、次のエラーが表示されます。

*** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 
'-[UITableViewController loadView] loaded the "Eab-23-IvL-view-eGY-e2-X6m" nib but didn't 
get a UITableView.'

つまり、UITableViewController から継承する設定ビュー コントローラーには、ストーリーボードに実際の UITableView がありません。間違いなく機能する修正は、設定ビュー コントローラーをストーリーボードから削除し、削除したものの代わりにテーブル ビュー コントローラーをドラッグすることです。次に、ID インスペクターで適切なクラスを指定し、すべてのセグエと接続を元に戻します。

于 2013-05-13T10:52:15.973 に答える
1

UIToolBarを使用して、適切な処理方法がある場合に使用していUINavigationBarます。次に、ボタンを設定し、ボタンをsettingViewController(コントロール+ドラッグ)に接続してから、を選択modalし、セグエに名前を設定し、バーボタンアイテムをコントロール+ドラッグしてviewControllerに接続し、次のように接続できます。

- (IBAction)btnSettings:(id)sender {
    [self performSegueWithIdentifier:@"settingsSegue" sender:sender];
}

その後、動作するはずです。

于 2013-05-13T17:25:17.477 に答える