2010-08-08 84 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