0

テーブルビューの行を押すと、ストーリーボードの別の画面に移動したいと思います。

1)ナビゲーションコントローラーを使用したくないのですか、それとも使用する必要がありますか?

だから私はこのコードを試しました:

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

UIViewController *vc=[storyBoard instantiateViewControllerWithIdentifier:@"CenterMain"];
    [vc setModalPresentationStyle:UIModalPresentationFullScreen];
    [self presentedViewController:vc animated:YES];

私の中(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {

この警告が表示されます:

Instance method '-presentedViewController:animated:' not found (return type defaults to 'id')

実行中のこのエラー:

MainMap presentedViewController:animated:]: unrecognized selector sent to instance 0x72a2070
 *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[MainMap presentedViewController:animated:]: unrecognized selector sent to instance 0x72a2070'

2)このコードでnavigationControllerを使用する場合:

UIStoryboard * storyBoard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil];
[[self navigationController] pushViewController:[storyBoard instantiateViewControllerWithIdentifier:@"CenterMain"] animated:YES];

動作しますが、ナビゲーションコントローラーのバーを上部に表示したくないということです。

だから私は1でヘリするか、ソリューション2でトップバーを消去する方法を教えたいと思います。

ありがとう!

4

1 に答える 1

1

UIViewController - (void)setNavigationBarHidden:(BOOL)hidden animated:(BOOL)animatedまたは- (void)setNavigationBarHidden:(BOOL)hidden;メソッドを使用します。だからあなたの場合、

[[self navigationController] setNavigationBarHidden:YES];

非表示にしたいだけの場合、または:

[[self navigationController] setNavigationBarHidden:YES animated:YES];

隠しながらアニメートしたい場合。

于 2012-12-26T14:09:34.967 に答える