iOS - 如何绘制一个带有数字/字符的圆圈?

时间:2012-07-16 22:21:59

标签: iphone objective-c ios cocoa

我想创建一个UIView,它会显示一个带有数字或字符的彩色圆圈。我已经看过创建圆圈的例子,但我怎么做到这一点?

我想在屏幕上放置多个这些视图,并用线条连接它们。

有什么建议吗?

2 个答案:

答案 0 :(得分:5)

// Swift, iOS8
var letterLabel = UILabel(frame: CGRect(x: 50, y: 0, width: 100, height: 100))
letterLabel.layer.cornerRadius = 50
letterLabel.textAlignment = NSTextAlignment.Center
letterLabel.layer.borderWidth = 10
letterLabel.layer.backgroundColor = UIColor.blueColor().CGColor
letterLabel.font = UIFont(name: "Hoefler Text", size:75.0)
letterLabel.text = "A"

enter image description here

答案 1 :(得分:3)

如果你已经知道如何绘制圆圈,那么你已经解决了一半的问题:)假设圆圈是用UIView circleView绘制的。

现在你要创建一个UILabel来绘制字母。

UILabel* circleLabel = [[UILabel alloc] init];
[circleLabel setText:@"letter goes here"];

现在您想将标签放在circleView的顶部,因此您将其添加为子视图:

[circleView addSubview:circleLabel];

此时,根据circleView的大小和circleLabel的字体大小,标签可能位于圆圈的中心,也可能不位于圆圈的中心。使用setFrame上的circleLabel功能调整其在circleView内的位置。