Как облегчить подсветку анимации в iOS Charts - PullRequest
0 голосов
/ 24 августа 2018

При выделении фрагмента PieChartView (из iOS Charts ) выделенный выбор выскакивает без анимации по умолчанию.Есть ли способ облегчить анимацию между стандартным и выделенным эффектом?

Стандартный вид:

Standard Pie Chart

Выделенный вид

Highlighted

1 Ответ

0 голосов
/ 12 марта 2019

Размер выбранного сегмента контролируется свойством selectionShift объекта dataSet.Значение 0 означает, что элемент не будет изменен при его выборе.

Возможно изменить это значение с течением времени, контролируемое встроенной функцией аниматора.

Комувызвать аниматор при выборе сегмента круговой диаграммы, реализовать функцию chartValueSelected(_ chartView: ChartViewBase, entry: ChartDataEntry, highlight: Highlight) делегата представления диаграммы.

Пример:

override func chartValueSelected(_ chartView: ChartViewBase, entry: ChartDataEntry, highlight: Highlight) {

    let animator = Animator()

    animator.updateBlock = {
        // Usually the phase is a value between 0.0 and 1.0
        // Multiply it so you get the final phaseShift you want
        let phaseShift = 10 * animator.phaseX

        let dataSet = chartView.data?.dataSets.first as? PieChartDataSet
        // Set the selectionShift property to actually change the selection over time
        dataSet?.selectionShift = CGFloat(phaseShift)

        // In order to see the animation, trigger a redraw every time the selectionShift property was changed
        chartView.setNeedsDisplay()
    }

    // Start the animation by triggering the animate function with any timing function you like
    animator.animate(xAxisDuration: 0.3, easingOption: ChartEasingOption.easeInCubic)
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...