2017-10-18 35 views
3

私はUIBarButtonItemを隠して表示したいが、Swift 4とiOS 11以降はそれ以上は機能しない。どうして ?非表示のためのSwift 4でUIBarButtonItemを非表示にする

コード:ショーの

self.navigationItem.rightBarButtonItem = nil 

コード:

self.navigationItem.rightBarButtonItem = self.barButtonItem 

前:

UIBarButtonItem is display

中に

When I tap on my SearchBar

後:

When I click on Cancel, UIBarButtonItem not appear

+0

あなたは 'rightBarButtonItem'を隠している場合は? –

+0

UISearchBarが編集を開始するとき。 – MichelRobico

答えて

0

あなたが標準的な要素を使用する場合は、これを試すことができます。あなたはまた、最初にUIBarButtonItemを作成して、再び次のコードの中でそれを割り当てることができます。

self.navigationItem.setRightBarButtonItem(UIBarButtonItem(barButtonSystemItem: .Search, target: self, action: "barButtonItemClicked:"), animated: true) 

参考のために:https://developer.apple.com/documentation/uikit/uinavigationitem/1624929-setrightbarbutton

+0

私のコードとの違いは何ですか? – MichelRobico

+0

あなたは、あなたのnavigationItemの与えられた機能setRightBarButtonItem(...)を使用していません。私はbarButtonItemを直接(あなたのコード)swift3で動作していたが、swift4では割り当てていないと仮定しています – AlexWoe89

関連する問題