1

ここでこのXYPieChartを使用しようとしていますが、デモはうまく機能し、見た目も美しくなっています。問題は、ストーリーボードで再作成しようとすると、グラフが非常に小さく表示され、サイズを変更できないように見えることです。私はすべての設定をいじって、プロパティのフレームを設定しましたが、何も機能していないようです。次のコマンドを使用して、画面全体にサイズ変更してみました。

[self.pieChart setFrame:CGRectMake(0, 0, self.view.bounds.size.width, self.view.bounds.size.height)];

フレームが画面全体に広がり、すべてが灰色になることを除いて、同じ結果が得られます。誰でも、これはそれがどのように出てくるかです、灰色はフレームであり、XYPieChartは中央にロードされます:

私はまだかなり新しいので、これを改善する方法を探していましたが、意味のある十分な検索クエリを作成できません。

4

2 に答える 2

2

チャートにpieRadiusプロパティを設定していないようです。

これを変更すると、パイが大きくなるはずです。

于 2013-02-26T17:36:21.840 に答える
1

問題はAutoLayoutが原因です。プロジェクトでAutoLayoutを引き続き使用する場合は、viewDidAppearを次のように変更するだけです。

- (void)viewDidAppear:(BOOL)animated {

    self.pieChart.pieRadius = MIN(self.pieChart.frame.size.width/2, self.pieChart.frame.size.height/2) - 10;
    self.pieChart.self.pieCenter = CGPointMake(self.pieChart.frame.size.width/2, self.pieChart.frame.size.height/2);
    self.pieChart.labelRadius = self.pieChart.pieRadius/2;
    self.pieChart.labelFont = [UIFont boldSystemFontOfSize:MAX((int)self.pieChart.pieRadius/10, 5)];


    [self.pieChart reloadData];

}

viewDidAppearが呼び出される時点で、円グラフフレームはAutoLayoutによって提供されるサイズで既に更新されています。

于 2013-08-23T08:50:03.420 に答える