9

ナビゲーションコントローラーが使用する戻るボタンを非表示にする方法があります。これは、現在のビューを管理するコントローラーではなく、前のコントローラーによって設定されるため、アクセスが難しくなります。ユーザーが画面から離れないように、編集モードでこれを行う必要がありました。

if(self.editing) {
    // Get rid of the back button   
    UIView *emptyView = [[UIView alloc] init];;
    UIBarButtonItem *emptyButton = [[[UIBarButtonItem alloc] initWithCustomView:emptyView] autorelease];
    [self.navigationItem setLeftBarButtonItem:emptyButton animated:YES];
} else {
    // Restore the back button
    [self.navigationItem setLeftBarButtonItem:nil animated:YES];        
}

これを行うためのより良い方法はありますか?

4

4 に答える 4

45

これを使用して戻るボタンを非表示にします

[self.navigationItem setHidesBackButton:YES]

これを使用して戻るボタンを表示します

[self.navigationItem setHidesBackButton:NO]
于 2009-03-27T16:39:57.333 に答える
1

編集が有効または無効になっているときに戻るボタンを表示および非表示にするためにViewControllerで使用する方法は次のとおりです。

- (void)setEditing:(BOOL)editing animated:(BOOL)animated
{
    if (editing) {
        // Disable the back button
        [self.navigationItem setHidesBackButton:YES animated:YES];
    }
    else {
        // Enable the back button
        [self.navigationItem setHidesBackButton:NO animated:YES];
    }

    [super setEditing:editing animated:animated];
}
于 2012-05-23T15:11:45.073 に答える
0

ストーリーボードからView Controllerへのバーボタンの強い(デフォルトでは弱い)アウトレットを作成します。目的は、左右のバー ボタンを nil に設定したときに参照が失われないようにすることです。

于 2013-02-14T08:24:06.970 に答える