0

我想绘制一个 UIButton 填充红色或 rgb 呈现的其他颜色,并且只有上边缘是圆形的
有些人回答我是为了得到一个图像来做到这一点,但每次我想改变它时,我都必须带来新的图像并替换它,我想问我可以从代码中做到这一点而不获取图像。

4

2 回答 2

0

没有直接的方法。实现这一点的唯一方法是创建一个段控件并在其中只保留一个段。

详细实现见这篇文章

更新:

如果您只想圆两个角,请检查 UIView 中的圆两个角仅两个圆角?正如 rdurand 的评论中提到的那样。由于段控制是 的子视图UIView,因此应该可以。

于 2012-10-11T07:39:15.333 回答
0

bezierPathWithRoundedRect:xRadius:yRadius:您可以使用 NSBezierPath 的方法绘制圆角。然后用另一条贝塞尔路径绘制它。或者您可以使用 moveToPoint: lineToPoint: 和 curveToPoint:controlPoint1:controlPoint2 定义自定义贝塞尔路径:

看看这个: https ://developer.apple.com/library/mac/#documentation/Cocoa/Reference/ApplicationKit/Classes/NSBezierPath_Class/Reference/Reference.html

于 2012-10-11T07:53:41.250 回答