我想關閉調整NSCollectionView時發生的「隨機」動畫。這可能嗎?如何禁用NSCollectionView中的動畫
9
A
回答
3
7
這可以工作,但它設置了一個私有實例變量,因此它可能在Mac App Store中沒有問題。
[collectionView setValue:@(0) forKey:@"_animationDuration"];
3
kainjow是正確的。加入這樣的:(!不是集合視圖)
- (id) animationForKey:(NSString *) key
{
return nil;
}
原型視圖子類禁用動畫
0
我才能夠得到這個,如果我做了以下工作:
1)子類該視圖將NSCollectionViewItem用作其視圖。該子類視圖需要CALayer,並將視圖子類設置爲CALayer的代理。
2)實施的CALayer委託方法所以沒有動畫動作應該發生:
override func actionForLayer(layer: CALayer, forKey event: String) -> CAAction? {
return NSNull()
}
3)最後,在NSCollectionView數據源的方法:
func collectionView(collectionView: NSCollectionView, itemForRepresentedObjectAtIndexPath indexPath: NSIndexPath) -> NSCollectionViewItem {
// get a new collection view item
....
// disable animations
CATransaction.begin()
CATransaction.setDisableActions(true)
// populate your cell
....
CATransaction.commit()
}
1
禁用所有集合視圖的動畫在Swift中,在動畫發生之前就做這件事:
NSAnimationContext.current.duration = 0
+1
天才解決方案 – sumesh 2017-09-07 18:00:20
相關問題
- 1. Swift ReloadData NSCollectionView動畫
- 2. NSCollectionView動畫重新佈局
- 3. 如何禁用WPF動畫
- 4. 如何禁用UIPopoverController動畫?
- 5. 如何禁用NSCollectionView中的選擇矩形繪圖?
- 6. android:如何禁用開關的動畫?
- 7. 如何禁用UIScrollView的減速動畫?
- 8. 如何使用Xamarin.Forms禁用Android TabBar中的滑動動畫?
- 9. 何時應禁用動畫?
- 10. 在BlueprintJS中禁用動畫?
- 11. 在ViewPager中禁用動畫
- 12. 在Wpf中禁用動畫
- 13. 在willAnimateRotationToInterfaceOrientation中禁用動畫?
- 14. 在XAML中禁用動畫?
- 15. 如何禁用Photoswipe動畫縮略圖
- 16. 我如何可以禁用,而動畫
- 17. IBM Worklight - 如何禁用啓動畫面?
- 18. 如何禁用SDL啓動畫面?
- 19. 如何禁用WPF ContextMenu動畫?
- 20. 如何禁用全景默認動畫
- 21. 如何禁用菜單彈出動畫
- 22. 如何禁用嵌套在UIView動畫塊中的代碼的動畫?
- 23. 禁用segue動畫
- 24. UIBarButtonItem禁用動畫
- 25. 禁用rCharts動畫
- 26. 禁用默認的動畫
- 27. mCustomScrollbar禁用滾動動畫
- 28. NSCollectionView另一NSCollectionView
- 29. 在RecyclerView中禁用滾動動畫
- 30. 禁用聚合物中的Charts.js動畫?
在此有任何進展一個?有同樣的問題,不希望私人API。 – Sunkas 2013-12-13 14:59:39