如何显示 iCarousel 中心视图仅突出显示其他最近的视图显示一些黑暗

Posted

技术标签:

【中文标题】如何显示 iCarousel 中心视图仅突出显示其他最近的视图显示一些黑暗【英文标题】:how to show iCarousel center view only highlighted other nearest view show some dark 【发布时间】:2013-05-22 07:25:51 【问题描述】:

我正在使用 iCarousel 显示图像,其显示类型为 carousel.type = iCarouselTypeRotary; 一切正常,但我需要对其显示 UI 进行一些更改。我只想显示中心视图显示原始 alpha 和颜色,突出显示其他最近的两个视图显示暗。我做了谷歌但没有罚款任何解决方案。请给我一些建议或指导如何实现这一目标。

我用下面的截图来解释这个:-

在实现 iCarousel 后显示图像如下:-

我想显示最近的两个中心图像视图的图像视图,如下所示:-

请帮帮我,谢谢。

【问题讨论】:

这是解决方案.. ***.com/a/9379132/1042240 @AhmedZ。谢谢,但我不清楚我是第一次使用这个,所以请你详细解释一下。 你有没有一个名为-carousel:itemAlphaForOffset:的方法? 你是否从 Github 安装了新的 icarousel 项目?新项目有很多额外的功能。您可以查看github.com/nicklockwood/iCarousel 谢谢 Nirav,让我检查一下 :) @AhmedZ。不,我没有暗示这种方法,但我在 .m 文件中找到了它 【参考方案1】:

有多种方法可以实现这一目标。您已经收到的carousel:itemAlphaForOffset: 答案是一个很好的方法,但它们需要做一些数学运算。

如果您有最新版本的 iCarousel,则可以使用选项 API 更轻松地实现这一点。将此方法添加到您的 UIViewController 中(如果您正在使用示例项目,它可能已经在其中,您需要对其进行修改):

- (CGFloat)carousel:(iCarousel *)carousel 
     valueForOption:(iCarouselOption)option 
        withDefault:(CGFloat)value 

    switch (option) 
        case iCarouselOptionFadeMin:
            return 0;
        case iCarouselOptionFadeMax:
            return 0;
        case iCarouselOptionFadeRange:
            return 2;
        default:
            return value;
    

您可以将 2 替换为更大或更小的数字,以增加或减少侧视图的不透明度。例如,值 3 会使它们不那么透明。值 1.5 将使它们更加透明。 (值为 1 将使它们不可见)。

【讨论】:

以上是关于如何显示 iCarousel 中心视图仅突出显示其他最近的视图显示一些黑暗的主要内容,如果未能解决你的问题,请参考以下文章

如何在 xamarin ios 中使用轮播视图

如何在 RecyclerView 中选择和取消选择项目?如何仅在回收站视图中突出显示所选项目?

如何仅选择 iCarousel 的中心图像?

如何在iphone中更改下一个视图之前突出显示按钮?

为啥当我切换到上一个屏幕时,iCarousel 视图中的图像会显示在上一个屏幕中?

如何在 UILabel 上仅突出显示触摸文本的背景