UIToolbar の setBackgroundImage:forToolbarPosition:metrics: メソッドを使用しています。それが私のコードです:
toolbar = [[UIToolbar alloc] initWithFrame:CGRectMake(0,0, 320, 44)];
[toolbar setBackgroundImage:[UIImage imageNamed:@"top"] forToolbarPosition:UIToolbarPositionTop barMetrics:UIBarMetricsDefault];
[toolbar setBackgroundImage:[UIImage imageNamed:@"bottom"] forToolbarPosition:UIToolbarPositionBottom barMetrics:UIBarMetricsDefault];
[self.view addSubview:toolbar];
ご覧のとおり、ツールバーを一番上に置きました。ただし、コードを実行すると、使用されるツールバー イメージは [UIImage imageNamed:@"bottom"] になります。
UIToolbarPosition はどのように取得されますか? 私の最初のアイデアはフレーム チェックです (< 1/2 スーパービュー フレームが上、そうでない場合は下... または一種)。
それはまだ下にあります。何か案が?