iOS - Setting UIButton background color only colors the corners

那年仲夏 提交于 2019-11-30 01:14:57

问题


I'm trying to customize my button by changing their colors, but when I use either:

self.loginButton.layer.backgroundColor = [UIColor colorWithRed:0.0 green:157.0/255.0 blue:223.0/255.0 alpha:1.0].CGColor;

or

self.loginButton.backgroundColor = [UIColor colorWithRed:0.0 green:157.0/255.0 blue:223.0/255.0 alpha:1.0];

All I get is this result:

What I want to do is change the white color to blue, any idea what I'm doing wrong?


回答1:


You're using a round rect button which is pretty ugly, and pretty hard to customise.

You can create a custom type button and use a background image, or create a custom type button and round the corners and set the background colour of the layer yourself.

If you want to get really fancy there is a nice tutorial here which can give you any-sized gradient type buttons using layers, no image files required.




回答2:


What's that button type? If you want to customise button, you gotta create a button with [UIButton buttonWithType:UIButtonTypeCustom]




回答3:


I discovered this almost by accident:

self.loginButton.tintColor = [UIColor redColor];

Definitely works and has been available since iOS 2.0.



来源:https://stackoverflow.com/questions/9979057/ios-setting-uibutton-background-color-only-colors-the-corners

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!