2017-02-19 7 views
1

ios-chartsでbarchartを作成しようとしていますが、携帯電話の向きが変わった場合、barchartviewは画面に合わせて正しく再描画されません。グラフがトップ50に押しつぶされているようです風景モードのビューのピクセル。ios-charts向きが変わったときにbarchartを正しくサイズ変更する方法は?

私はコード内とインターフェースビルダーの両方で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に設定された制約を自動的にないバーコードビュー対応すべき?それとも何か他にも必要なことがありますか?

答えて

0

はい、自動的に更新されません。 たぶん、あなたは私はあなたの提案にtraitCollectionDidChangeに持っていたコードに置き換えてきました

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

試してみてください - まだ、残念ながら動作していないが... –

関連する問題