凡例を表示する LegendViewController があります。もともと、そこに UIImageView を配置しただけです。ただし、いくつかの凡例が必要であり、LegendViewController を再利用したいと考えています。そこで、新しいイニシャライザを作成しました:
- (id)initWithView:(UIView *)view withNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil {
[self initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
[self.view addSubview:view];
}
return self;
}
したがって、これは UIView オブジェクトを渡すと機能します。私の伝説の 1 つとして、画像や UIView オブジェクトなしで .xib をビュー コントローラーにロードできるかどうか疑問に思っていました。色分けされた四角形 (色付きの UIView) とテキスト (UILabels) だけが必要な非常に単純な凡例があります。これをスタンドアロンの .xib ファイルで作成できますが、LegendViewController にロードする方法がわかりませんでした。私はこれまでに持っています:
UINib *nib = [UINib nibWithNibName:@"HealthLegend" bundle:nil];
ここで、HealthLegend は、データを含むスタンドアロンの .xib ファイルです。または、これを行うことができず、描画プログラムで画像を作成するか、drawRect でコードを手動で描画する必要がありますか? ありがとう。