2011-08-10 56 views
10

我有一個導航欄,完全由代碼設置和控制。所以它不會出現在IB中。我有一個按鈕「self.navigationitem.rightbarbutton = myButton;」出現 我通過將它設置爲等於NIL而讓它消失。我想知道的是我怎樣才能使它淡入淡出?製作uibarbuttonitems褪色

回答

23

我找到了適合我 效果最好[self.navigationItem setRightBarButtonItem:myButton的動畫:YES]; 然後 [self.navigationItem setRightBarButtonItem:nil animated:YES]; 使其淡出。

0

不幸的是,沒有內置的方法來爲導航欄中的酒吧按鈕項目設置動畫效果。 UIBarButtonItem不是視圖或控件,因此它沒有像alpha這樣的動畫屬性。

對於UIToolbar中的酒吧按鈕項目,有一種動畫方式。看到這個答案的詳細信息:

Is it possible to use Core Animation to fade out a UIBarButtonItem?

1

斯威夫特版本

淡入:navigationItem.setRightBarButtonItem(myButton, animated: true)

淡出:navigationItem.setRightBarButtonItem(nil, animated: true)