ios-charts如何在方向改变时正确调整条形图的大小?

时间:2017-02-19 22:43:08

标签: swift constraints orientation ios-charts

我正在尝试使用ios-chart创建一个barchart,如果手机的方向发生变化,barchartview无法正确重新绘制以适应屏幕,则会出现问题在横向模式下,图形似乎被压缩到视图的前50个像素中。

我已尝试在代码和界面构建器中向barchart视图添加约束,但我仍然遇到同样的问题。

我找到了一种方法让它发挥作用 - 当方向改变时,删除并重置barchartview

override func traitCollectionDidChange(_ previousTraitCollection: UITraitCollection?) {
    print ("orientation change")
    barChartView!.removeFromSuperview()
    barChartView  =  BarChartView(frame: CGRect(x: 0, y: 60, width: self.view.frame.size.width, height: self.view.frame.size.height - 60))
    self.view.addSubview(barChartView!)
    setChart()
}

但条形码视图不应自动响应IB中设置的约束吗?或者还有其他我需要做的事情吗?

1 个答案:

答案 0 :(得分:0)

是的,它不会自动刷新。 也许你应该试试

chart.data.notifyDataChanged()
chart.notifyDataSetChanged()
chart.setNeedsDisplay()