如何显示 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 中心视图仅突出显示其他最近的视图显示一些黑暗的主要内容,如果未能解决你的问题,请参考以下文章
如何在 RecyclerView 中选择和取消选择项目?如何仅在回收站视图中突出显示所选项目?