我正在使用iCarousel(http://cocoacontrols.com/platforms/ios/controls/icarousel)
构建IOS应用我想改造旋转木马,让它看起来像一个“风扇”。所以,所有的牌都将在顶部的一个ponit中加入,你可以滚动牌。
我的客户从Absolut的Drinkspiration获得了这个想法:
如何更改轮播以获得此“效果”
感谢您的帮助
答案 0 :(得分:4)
你走了:
- (CATransform3D)carousel:(iCarousel *)_carousel transformForItemView:(UIView *)view withOffset:(CGFloat)offset
{
CGFloat radius = 400.0f;
CGFloat angle = 0.5f; // in radians
CATransform3D transform = CATransform3DIdentity;
transform = CATransform3DTranslate(transform, 0.0f, -radius, 0.0f);
transform = CATransform3DRotate(transform, -angle * offset, 0.0f, 0.0f, 1.0f);
return CATransform3DTranslate(transform, 0.0f, radius, 0.0f);
}
半径和角度针对iCarousel附带的示例应用进行了优化,因此您需要为您的应用调整它们。您还需要返回numberOfVisibleItems为3,否则如果轮播中有太多,则视图将自动换行并重叠。
更新:
这种类型的轮播现在内置于iCarousel库中。只需使用iCarouselTypeWheel。