Xcode 5中是否不再提供圆形矩形按钮的拖放功能?我似乎无法在Interface Builder中找到它。我猜这是iOS 7中的一个变化,但我只是想确定。
答案 0 :(得分:74)
还可以在故事板中制作圆角矩形。
答案 1 :(得分:52)
Xcode 4和之前版本的Round Rect
按钮似乎已被System Default
按钮替换,这也很明显。即默认情况下,没有带圆角的白色背景,只有文本可见。
要使按钮变为白色(或任何其他颜色),请选择属性检查器并向下滚动到View
部分:
选择Background
并将其更改为白色:
如果你想要圆角,可以用一点代码来完成。
只需ctrl-drag
从按钮到.h
文件,将其称为roundedButton
,并将其添加到viewDidLoad
:
CALayer *btnLayer = [roundedButton layer];
[btnLayer setMasksToBounds:YES];
[btnLayer setCornerRadius:5.0f];
答案 2 :(得分:5)
这对于@ Robert的回答来说太长了,但我只是想补充一下这句话:“来自Xcode 4的圆形矩形按钮......似乎已被替换......”。
确认已经 已被替换:
在iOS 7中不推荐使用圆角矩形按钮。请使用 系统按钮 - 即UIButtonTypeSystem类型的UIButton对象。
iOS 7系统按钮不包括挡板或背景外观。 系统按钮可以包含图形符号或文本标题 可以指定色调颜色或接收其父色。
...
如果您需要显示包含挡板的按钮,请使用按钮 键入UIButtonTypeCustom并提供自定义背景图像。
Apple iOS 7 Transition Guide,p。 45,“圆角矩形按钮”
因此,Apple建议使用背景图片。
答案 3 :(得分:3)
实际上在ios 7中,基本控件的总UI已经更改。 如果你仍然想要一个圆角矩形按钮,你必须去UIView子类的coregraphical属性,即;图层属性。
buttonObj.layer.cornerRadius = 5.0f;//any float value
显示你必须为buttonObj提供一些背景颜色的效果
如果要设置边框宽度
buttonObj.layer.borderWidth = 2.0f;//any float value
你也可以给出边框的颜色
buttonObj.layer.borderColor = [[UIColor greenColor]CGColor];
注意:这里我们必须使用CGColor作为图层,因为图层是UIViews的核心图形属性