iPhone的Skype應用程序使用動畫TabBar圖標。例如,在登錄過程中,最右側的選項卡圖標顯示循環箭頭。呼叫「呼叫」選項卡圖標時,輕輕地閃爍,這顯然是通過動畫完成的。UITabBarItem圖標動畫
我想知道如何爲標籤欄項目的圖標設置動畫。
在我的特殊情況下,當用戶按下'Favorite'按鈕時,它會跳到'Favorites'標籤欄項上。我已經實現了跳躍動畫,但我希望相應的標籤欄圖標在動畫結束時閃爍以給它帶來完整感。
任何關於我應該看的方向的建議?
在此先感謝。
iPhone的Skype應用程序使用動畫TabBar圖標。例如,在登錄過程中,最右側的選項卡圖標顯示循環箭頭。呼叫「呼叫」選項卡圖標時,輕輕地閃爍,這顯然是通過動畫完成的。UITabBarItem圖標動畫
我想知道如何爲標籤欄項目的圖標設置動畫。
在我的特殊情況下,當用戶按下'Favorite'按鈕時,它會跳到'Favorites'標籤欄項上。我已經實現了跳躍動畫,但我希望相應的標籤欄圖標在動畫結束時閃爍以給它帶來完整感。
任何關於我應該看的方向的建議?
在此先感謝。
我很驚訝的解決方案多麼容易!
Add方法將你的應用程序委託類的.m文件(或管理您的UITabBar任何其他類)包含以下程序:
addSubview:
將其添加到您的TabBar視圖。frame.origin.x
值以將圖像放置在要製作動畫的標籤項目上方。很容易,你不這麼認爲嗎?
您可以在任何需要爲選項卡欄項目設置動畫的UIApplicationDelegate實例上調用此方法。
還注意到,您可以點擊通過的ImageView選擇標籤欄項目好像有什麼在標籤欄沒有圖像是非常重要的。很多有趣的結論可以在這裏做了,如果你知道你可以做些什麼......
這不適用於動態寬度的UITabBar。 – 2017-01-16 05:40:27
我還沒有這樣做,但我只是想嘗試構建一個CAAnimation,例如與CABasicAnimation並將其添加到您想要動畫的UITabBarItem。
有關如何建立一個CABasicAnimation看到核心動畫編程指南詳細信息: http://developer.apple.com/mac/library/documentation/Cocoa/Conceptual/CoreAnimation_guide/Articles/AnimatingLayers.html#//apple_ref/doc/uid/TP40006085-SW1
Nah,我相信這不起作用,因爲UITabBarItem不是一種視圖 - 它來源於NSObjest(基本類)和UIBarItem(這裏也沒有什麼有趣的地方)。看起來好像沒有Layer或甚至可以玩的框架。 但我設法通過輸入'後門'來解決這個問題。 感謝您的想法,雖然 – 2010-08-24 00:27:25
您可以通過獲取其觀點,動畫的TabBar圖標,然後做任何想做動畫作爲你喜歡UIView。下面是一個簡單的範例轉換,歡呼!
func tabBar(_ tabBar: UITabBar, didSelect item: UITabBarItem){
var tabBarView: [UIView] = []
for i in tabBar.subviews {
if i.isKind(of: NSClassFromString("UITabBarButton")!) {
tabBarView.append(i)
}
}
if !tabBarView.isEmpty {
UIView.animate(withDuration: 0.15, animations: {
tabBarView[item.tag].transform = CGAffineTransform(scaleX: 1.2, y: 1.2)
}, completion: { _ in
UIView.animate(withDuration: 0.15) {
tabBarView[item.tag].transform = CGAffineTransform.identity
}
})
}
}
PS:請以
你是如何實現跳躍動畫標籤分配每個UITabBarItem? – 2011-06-10 02:20:04
我喜歡[RAMAnimatedTabBarController](https:// cocoapods。org/pods/RAMAnimatedTabBarController) – 2016-12-09 17:02:07