http://www.cocoanetics.com/2011/08/adding-fading-gradients-to-uitableview/
建议在另一个堆栈溢出问题,但它只能应用于UItableVIEws.我希望图像在距离边界1厘米处开始衰落.
解决方法 类似于您链接到的Cocoanetics帖子中所做的,您可以创建一个CAGradIEntLayer来覆盖您的滚动视图.使用滚动视图的背景颜色(在我的示例中为白色)使其淡出到左,右,上和下边缘:CGcolorRef innercolor = [UIcolor colorWithWhite:1.0 Alpha:0.0].CGcolor; CGcolorRef outercolor = [UIcolor colorWithWhite:1.0 Alpha:1.0].CGcolor; // first,define a horizontal gradIEnt (left/right edges) CAGradIEntLayer* hMaskLayer = [CAGradIEntLayer layer]; hMaskLayer.opacity = .7; hMaskLayer.colors = [NSArray arrayWithObjects:(ID)outercolor,(ID)innercolor,(ID)outercolor,nil]; hMaskLayer.locations = [NSArray arrayWithObjects:[NSNumber numberWithfloat:0.0],[NSNumber numberWithfloat:0.15],[NSNumber numberWithfloat:0.85],[NSNumber numberWithfloat:1.0],nil]; hMaskLayer.startPoint = CGPointMake(0,0.5); hMaskLayer.endPoint = CGPointMake(1.0,0.5); hMaskLayer.bounds = self.scrollVIEw.bounds; hMaskLayer.anchorPoint = CGPointZero; CAGradIEntLayer* vMaskLayer = [CAGradIEntLayer layer]; // without specifying startPoint and endPoint,we get a vertical gradIEnt vMaskLayer.opacity = hMaskLayer.opacity; vMaskLayer.colors = hMaskLayer.colors; vMaskLayer.locations = hMaskLayer.locations; vMaskLayer.bounds = self.scrollVIEw.bounds; vMaskLayer.anchorPoint = CGPointZero; // you must add the masks to the root vIEw,not the scrollVIEw,otherwise // the masks will move as the user scrolls! [self.vIEw.layer addSublayer: hMaskLayer]; [self.vIEw.layer addSublayer: vMaskLayer];
免责声明:这在四角的坡度/褪色方面有两倍的增长.你可以看看结果,并决定是否对你来说足够好.如果没有,您还可以尝试在Photoshop中绘制透明图像,并使用您绘制的图像将顶部的UIImageVIEw子视图作为蒙版添加.
Youtube screen capture
总结以上是内存溢出为你收集整理的ios – 淡出任何接近UIScollView边缘的内容全部内容,希望文章能够帮你解决ios – 淡出任何接近UIScollView边缘的内容所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)