2010-08-08 47 views

回答

5

好吧,差不多。您必须将其设置为自定义,但不包含UIButton的子类。那么你应该可以做类似

myButton.layer.cornerRadius = 8; 
myButton.layer.backgroundColor = [[UIColor blueColor] CGColor]; 

你也可以这样配置边框的粗细和颜色。有关更多详细信息,请参阅CALayer documentation

4

我不知道为什么有人downvoted这个答案,它的伟大工程,但你得加QuartzCore框架和

#import <QuartzCore/QuartzCore.h> 

然后它真棒,你失去了性感的高亮和光采购的圆角矩形了,但在它的颜色肯定值得

3

奥利弗提到的,解决这个问题最简单的方法是通过自定义类型创建自己的UIButton控制

// initialize your own UIButton 
UIButton *myBtn = [UIButton buttonWithType:UIButtonTypeCustom]; 
// set background color 
[myBtn setBackgroundColor:[UIColor blackColor]]; 
// set corner radius 
myBtn.layer.cornerRadius = 8; 

不要忘记在.m实现文件中导入Quartzcore框架。否则,您将无法设置自定义按钮的cornerRadius。

#import <QuartzCore/QuartzCore.h> 
+0

谢谢!如何在用户按下按钮时更改backgroundColor。此时按钮出现,但按下时不会改变状态。 – user1107173 2013-11-05 03:57:59