日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

view渐变色,透明度渐变

發布時間:2024/4/17 编程问答 58 豆豆
生活随笔 收集整理的這篇文章主要介紹了 view渐变色,透明度渐变 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1 功能描述

  開發中經常遇到這樣的需求:view2顯示在view1上面,透過view2可以漸漸的看到view1.效果如圖1所示:view1是一個imageView,view2是一個普通view。view1與view2完全重疊,view2從下到上由灰色到白色,由不透明到透明。圖2為只有view2的效果,圖3為只有view1的效果。

2 代碼如下

  如果只想顏色漸變,而不需要透明度的漸變,可以將alpha設為1.0。

?

1 - (void)viewDidLoad { 2 [super viewDidLoad]; 3 UIImageView *imgView = [[UIImageView alloc] initWithFrame:self.view.bounds]; 4 imgView.image = [UIImage imageNamed:@"sun"]; 5 [self.view addSubview:imgView]; 6 7 UIView *gradView = [[UIView alloc] initWithFrame:self.view.bounds]; 8 CAGradientLayer *layer = [self getGradientWithFrame:gradView.bounds]; 9 [gradView.layer insertSublayer:layer atIndex:0]; 10 [self.view addSubview:gradView]; 11 } 12 13 - (CAGradientLayer *)getGradientWithFrame:(CGRect) frame { 14 int colorOneV = 33; 15 int colorTwoV = 33; 16 int colorThreeV = 33; 17 // 設置顏色與不透明度alpha,如果只想漸變而不想透明,可以將alpha設為1.0。 18 UIColor *colorOne = [UIColor colorWithRed:(colorOneV/255.0) green:(colorOneV/255.0) blue:(colorOneV/255.0) alpha:0.0]; 19 UIColor *colorTwo = [UIColor colorWithRed:(colorTwoV/255.0) green:(colorTwoV/255.0) blue:(colorTwoV/255.0) alpha:0.5]; 20 UIColor *colorThree = [UIColor colorWithRed:(colorThreeV/255.0) green:(colorThreeV/255.0) blue:(colorThreeV/255.0) alpha:1.0]; 21 NSArray *colors = [NSArray arrayWithObjects:(id)colorOne.CGColor, colorTwo.CGColor, colorThree.CGColor , nil]; 22 NSNumber *stopOne = [NSNumber numberWithFloat:0.0]; 23 NSNumber *stopTwo = [NSNumber numberWithFloat:0.5]; 24 NSNumber *stopThree = [NSNumber numberWithFloat:1.0]; 25 NSArray *locations = [NSArray arrayWithObjects:stopOne, stopTwo, stopThree, nil]; 26 // 漸變圖層 27 CAGradientLayer *layer = [CAGradientLayer layer]; 28 layer.colors = colors; 29 layer.locations = locations; 30 layer.frame = frame; 31 return layer; 32 }

?

?

?

轉載于:https://www.cnblogs.com/mddblog/p/4705277.html

總結

以上是生活随笔為你收集整理的view渐变色,透明度渐变的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。