在swift中将字幕添加到饼图中心

时间:2017-01-01 04:33:03

标签: ios swift swift3 ios10 ios-charts

我想在饼图中心的主要文字下面显示一个字幕,让用户知道这个数字代表什么。这可能吗?现在我有一个我转换成字符串的数字。

以下是我的代码:

import cats.syntax.all._, cats.instances.all._

如果您需要查看代码的其他部分,请告诉我。谢谢!

1 个答案:

答案 0 :(得分:1)

Nvm,我明白了。你必须创建2个可变属性字符串,然后将它们连接到第二个有" \ n"

func setCenter(days: Int){

    let circleColor = UIColor.black
    let textColor = UIColor.white

    pieChart.holeRadiusPercent = 0.3
    pieChart.transparentCircleRadiusPercent = 0.0
    let dayString = String(describing: days)
    let centerText = NSMutableAttributedString()
    let numberText = NSMutableAttributedString(string: " " + dayString, attributes: [NSForegroundColorAttributeName:textColor,NSFontAttributeName: UIFont(name: "SubwayLogo",size:30)!])
    let descriptionText = NSMutableAttributedString(string: "\n Days Left", attributes: [NSForegroundColorAttributeName:textColor,NSFontAttributeName: UIFont(name: "SubwayLogo",size:8)!])
    centerText.append(numberText)
    centerText.append(descriptionText)
    pieChart.centerAttributedText = centerText
    pieChart.centerTextRadiusPercent = 1.0
    pieChart.holeColor = circleColor
} 

确保使用2个可变字符串的间距和大小。我在dayString之前添加了一个额外的空格来使它对齐,pieChart有点挑剔。