2009-05-02 47 views
5

我很好奇,是否有可能以某種方式將Core Animation交織在一起以使UIBarButtonItem「淡出」?我有一個tableView,我用兩個不同的數據源表示。一旦特定的數據源被觸發,我想淡出當前的UIToolBar選項並淡入新的選項。是否可以使用Core Animation淡出UIBarButtonItem?

感謝您指點我正確的方向。

回答

7

如果你確實在使用UIToolbar(注意小寫「b」)而不是UINavigationBar,那麼有一種非常簡單的方法來改變按鈕並使轉換自動淡入而不會掉到Core Animation上。

如果您使用Interface Builder,則需要在代碼中提供對工具欄的引用。創建一個IBOutlet屬性,並以IB工具欄鏈接到它:

@property (nonatomic, retain) IBOutlet UIToolbar *toolbar; 

這將允許你引用UIToolbar爲self.toolbar。然後,創建新的按鈕,並將它們添加到一個NSArray並把它傳遞給 - [UIToolbar setItems:動畫:]方法如下:

UIBarButtonItem *newItem = [[[UIBarButtonItem alloc] 
           initWithBarButtonSystemItem:UIBarButtonSystemItemDone 
           target:self 
           action:@selector(handleTap:)] autorelease]; 
NSArray *newButtons = [NSArray arrayWithObjects:newItem, nil]; 
[self.toolbar setItems:newButtons animated:YES]; 
+2

發現這個職位,而谷歌搜索 - 作者注:有一個`[自我。 navigationItem setLeftBarButtonItem:myBarButton animated:YES]`我用於此目的的方法。謝謝! – taber 2012-03-28 03:47:18

2

我不相信有一種方法來控制UIBarButtonItem上的alpha,但UIToolbar類已經有一個方法來支持你想要做的事情:-setItems:animated :.

相關問題