UIButton 设置阴影效果
来源:互联网 发布:e63诺基亚怎么下载软件 编辑:程序博客网 时间:2024/06/05 09:12
总结:
方法一:
此时需要考虑对button的layer进行设置
button layer 设置以下几个属性
cornerRadius;
shadowOffset
shadowOpacity;
shadowColor;
// showPosterBtn.layer.masksToBounds=YES;
loginBtn=[UIButton buttonWithType:UIButtonTypeCustom]; loginBtn.frame=CGRectMake(10, 120, 88, 36); loginBtn.backgroundColor=[UIColor colorWithRed:44/255.0 green:178/255.0 blue:219/255.0 alpha:1.0]; loginBtn.layer.cornerRadius = 5; loginBtn.layer.shadowOffset = CGSizeMake(1, 1); loginBtn.layer.shadowOpacity = 0.8; loginBtn.layer.shadowColor = [UIColor blackColor].CGColor; [loginBtn setTitle:@"登 录" forState:UIControlStateNormal]; [self.view addSubview:loginBtn];
方法二:
先看一下,实现一个button的圆角,如下代码:
button.layer.masksToBounds =YES;
button.layer.cornerRadius =10;
button.shadowOffset = CGSizeMake(10, 10);
button.shadowOpacity = 0.7;
此时,如果你想即实现圆角又要阴影效果,那么这时会有问题,你把masksToBounds设成yes此时是圆角,但是阴影会没了,你把它设成no,圆角没了,阴影有了,于是我开始满网络去查,都没有找到解决方法,最后在一个论坛里有个兄弟这样说了一句:需要用一个层去实现阴影,然后我照着这个思路,写了如下代码
CALayer *layer = [CALayerlayer];
layer.frame = CGRectMake(跟button一样的位置并且一样大);
layer.backgroundColor = [UIColorblackColor].CGColor;
layer.shadowOffset = CGSizeMake(10, 10);
layer.shadowOpacity = 0.7;
layer.cornerRadius = 10;
//这里self表示当前自定义的view
[self.layeraddSublayer:layer];
UIButton *button = [[UIButtonalloc]initWithFrame:CGRectMake(某位置某大小)];
[self addSubview:button];
button.layer.masksToBounds =YES;
button.layer.cornerRadius =10;
结果:同时实现圆角与阴影,思路是在按钮与view之间加一层,去实现一个带圆角的阴影,这样最后就可以达到效果,注意一定要先上层再上按钮,这样保证按钮在层之上。参考:http://blog.csdn.net/lwjok2007/article/details/46659043
- UIButton 设置阴影效果
- UIButton 设置阴影效果
- 设置阴影效果
- UIView设置阴影效果
- android文字阴影效果设置
- 导航栏设置阴影效果
- android文字阴影效果设置
- 边线设置为阴影效果
- 绘制文字,设置阴影效果
- Android TextView设置阴影效果
- 设置图片圆角加阴影效果
- UIButton高光状态(highlighted)时阴影效果
- 设置UIButton点击的高亮效果
- css3阴影设置发光边框效果,阴影按钮
- 设置Eclipse选中变量的阴影效果
- 设置边框效果和阴影层
- 为无边框窗口设置阴影效果
- 设置UIView的简单阴影效果
- LCS相关问题
- 11款Linux下的数据恢复工具
- c#后台直接发起http请求
- struts2自定义拦截器
- Java并发编程实战
- UIButton 设置阴影效果
- 使用花生壳、路由器、个人电脑进行站点部署并实现外网域名访问图文详解(花生壳设置方法 使用方法 使用教程)
- sphinx 增量索引 实现近实时更新
- 学习笔记| AS入门(二) 简单控件篇(上)
- 线索二叉树(Threaded BinaryTree)
- 学习TP框架(一)
- AOJ-problem-849
- XeLatex在window上编译较慢的解决方法
- RockMongo 查询条件小结