2012-04-02 11 views
2

私は小さな問題に直面しています。皆さんが知っているように、5つ以上のタブがある場合、iOSは「詳細」ボタンを追加し、「編集」ボタンを使って「その他の」ビューに他のバー項目を表示します。何らかの理由で、このボタンを削除したいと思います。私は以下の方法を試したが、どういうわけか、それは動作しません。タブベースのiphoneアプリケーションで[詳細]ビューの[編集]ボタンを削除するには

tabBarController.moreNavigationController.navigationItem.rightBarButtonItem = nil; 

誰でもお手伝いできますか?ありがとう。

+1

エラーが発生しましたらお知らせください。最初の4つのタブをカスタマイズするのに役立ちます。そのため、「編集」ボタンが削除された場合、ユーザーはカスタマイズしません。だから、b4はそうしていると思う。 –

+0

エラーはありませんが、効果はありません。 – scottliyq

+0

それから、私は確信が持てませんが、リンゴは開発者がこれを行うことを許可していないと考えています。 Appleはフレームワークポリシーを改ざんするアプリケーションを拒否します。つまり、独自のタブバーをカスタマイズできますが、Appleが提供しているリンゴではプレイできません。 –

答えて

0

tabBarController.navigationItem.rightBarButtonItem = nil;

希望すると助かります。

+0

申し訳ありませんが動作しません。 – scottliyq

+0

@scottliyqなぜあなたはこの答えを受け入れるのですか? –

0

viewDidLoadにナビゲーションの代理人を追加してください。

self.navigationController.delegate = self; 
0

まず、moreNavigationControllerのデリゲートを設定します。

moreNavigationController.delegate = self 

次に、あなたは、このデリゲートメソッドでナビゲーション項目を変更することができます。

self.tabBarController?.moreNavigationController.navigationBar.topItem?.rightBarButtonItem?.tintColor = UIColor.clear 
self.tabBarController?.moreNavigationController.navigationBar.topItem?.rightBarButtonItem?.isEnabled = false 

をクリアするUIColorを変更する:

func navigationController(_ navigationController: UINavigationController, willShow viewController: UIViewController, animated: Bool) { 
    // remove edit button in 'more' table view 
    navigationController.navigationBar.topItem?.rightBarButtonItem = nil 
} 
0

あなたはいつものようにそれを無効にし、それを非表示にできそれを不可視にし、その機能を無効にすることによって、それを不可視にすると同時に使用することを完全に不可能にします。

関連する問題