【问题标题】:Pie chart isn't drag-able饼图不可拖动
【发布时间】:2017-10-25 07:44:15
【问题描述】:

我正在尝试使用iOS Charts 创建一个饼图,并且我知道饼图的默认设置是让它能够让用户拖动饼图并从不同的角度查看它.

但是,这里似乎不起作用:

func createChildrenPieChart(sections: [String], percents: [Double]) {
    var dataEntries = [ChartDataEntry]()


    for i in 0...(sections.count - 1) {
        let entry = PieChartDataEntry()
        entry.y = percents[i]
        entry.label = sections[i]
        dataEntries.append(entry)


    }

    let chartDataSet = PieChartDataSet(values: dataEntries, label: "")
    let chartData = PieChartData(dataSet: chartDataSet)

    childrenPieChart.data = chartData

    var colors: [UIColor] = []

    for _ in 0..<sections.count {
        let red = Double(arc4random_uniform(256))
        let green = Double(arc4random_uniform(256))
        let blue = Double(arc4random_uniform(256))

        let color = UIColor(red: CGFloat(red/255), green: CGFloat(green/255), blue: CGFloat(blue/255), alpha: 1)
        colors.append(color)
    }

    chartDataSet.colors = colors
}

任何帮助将不胜感激,我正在使用 Xcode 9,Swift 4.0

【问题讨论】:

    标签: swift ios-charts


    【解决方案1】:

    你必须设置isUserInteractionEnabled

    childrenPieChart.isUserInteractionEnabled = true
    

    【讨论】:

    • 您没有在此答案中添加任何新内容。此行已在此问题的另一个答案中提出。
    • 不需要使用所有其他变量。启用isUserInteractionEnabled 很好。
    【解决方案2】:

    我有一个用户可以旋转的功能饼图,你可以尝试添加这个:

        childrenPieChart.rotationEnabled = true
        childrenPieChart.highlightPerTapEnabled = true        
        childrenPieChart.maxAngle = 360.0
        childrenPieChart.isUserInteractionEnabled = true
        childrenPieChart.rotationAngle = 180.0
    

    【讨论】:

    • 感谢您的回答。但是,我只需要将 isUserEnterationEnabled 设置为 true。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-07
    相关资源
    最近更新 更多