如何通过 swift 在 iCarousel 库中使用 .Wrap 选项?

Posted

技术标签:

【中文标题】如何通过 swift 在 iCarousel 库中使用 .Wrap 选项?【英文标题】:How to use .Wrap option in iCarousel library by swift? 【发布时间】:2015-07-07 06:44:46 【问题描述】:

我需要通过 swift 在 iCarousel 中设置 .Wrap 选项。

这是我的代码。

func carousel(carousel: iCarousel!, valueForOption option: iCarouselOption, withDefault value: CGFloat) -> CGFloat

    switch (option)
    
        case .Spacing:
            return value * 1.1
        case .Wrap:
            return true 
            // Error cannot convert return expression
        default:
            return value
    


但我无法在 .Wrap 选项上返回 true。

我该如何解决这个问题? 谢谢!

【问题讨论】:

【参考方案1】:

Nick 应该把它放在文档中,对于 swift 用户来说,启用 wrap 的正确方法如下:

func carousel(carousel: iCarousel, valueForOption option: iCarouselOption, withDefault value: CGFloat) -> CGFloat 
 switch option 
  case .Wrap:
   return 1.0 // note: 0.0 if you want to disable wrap
  default:
   return value
 

【讨论】:

【参考方案2】:

为了让您的代码至少运行(尽管有警告),您可以尝试这样做:

case .Wrap:
    return true as! CGFloat 

希望它可以帮助您至少让应用程序暂时运行! (如果有帮助,您可以将此答案标记为有用。)

虽然为了更好的永久解决方案,您可以联系 iCarousel 团队。

【讨论】:

【参考方案3】:

对我来说很好用。

func carousel(_ carousel: iCarousel, valueFor option: iCarouselOption, withDefault value: CGFloat) -> CGFloat 
        if (option == .spacing) 
            return value * 1.1
        
        if (option == .wrap) 
            return 0.0 // wrap disabled
        
        return value

    

【讨论】:

以上是关于如何通过 swift 在 iCarousel 库中使用 .Wrap 选项?的主要内容,如果未能解决你的问题,请参考以下文章

在 Swift 的 iCarousel 中预览 UIWebView

(Swift) 如何为单独的 iCarousels 分配特定数量的项目?

swift 1.2 版中的 iCarousel 错误(候选不是 Objc 但协议需要它)

如何用动画重新加载 iCarousel?

Swift - 使用 UiView 的 iCarousal

从 segued View 返回时如何重新加载 iCarousel?