UINavigationView の UIToolbar に UITextField を追加しようとしていますが、ツールバーに表示されません。コードは非常に単純です。外観は次のとおりです。
- (void)viewDidLoad
{
[super viewDidLoad];
self.navigationController.toolbarHidden = NO;
UITextField *textField = [[UITextField alloc] initWithFrame:CGRectMake(0, 0, 200, 32)];
UIBarButtonItem *textFieldItem = [[UIBarButtonItem alloc] initWithCustomView:textField];
self.toolbarItems = [NSArray arrayWithObjects: textFieldItem, nil];
}
代わりに他のtoolbarItemsを追加しようとしましたが、それらはすべて機能します。たとえば、次のコードは問題なく動作します。
- (void)viewDidLoad
{
[super viewDidLoad];
self.navigationController.toolbarHidden = NO;
UIBarButtonItem *buttonItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemCamera target:self action:@selector(openCamera:)];
self.toolbarItems = [NSArray arrayWithObjects: buttonItem, nil];
}
- (void)openCamera:(NSString *)str
{
// some code..
}
これは、デフォルトで生成されたシングル ビュー アプリケーションに加えた唯一の変更であり、なぜ機能しないのかわかりません。ちなみにiOS7です。何が起こっているのか誰にも分かりますか?ありがとうございました!