ナビゲーション バーの titleView に UISearchBar があります。[searchBar sizetofit] を使用して、CGRectZero のフレームで UISearchBar を作成しました。しかし、Navigation の titleView 内の UISearchBar の左右のサイズに小さな空きスペースがあります。
theSearchBar = [[UISearchBar alloc] initWithFrame:CGRectZero];
theSearchBar.delegate = self;
self.navigationItem.titleView = self.theSearchBar;
[self.theSearchBar sizeToFit];
self.navigationItem.titleView.autoresizingMask = UIViewAutoresizingFlexibleWidth;
//Change color of UISearchBar
theSearchBar.tintColor = [UIColor colorWithRed:102.0f/255.0f green:73.0f/255.0f
blue:126.0f/255.0f alpha:1.0f];
//Change color of NavigationBarItem
self.navigationController.navigationBar.tintColor = [UIColor colorWithRed:102.0f/255.0f
green:73.0f/255.0f blue:126.0f/255.0f alpha:1.0f];
//Set background image for navigation bar
[self.navigationController.navigationBar setBackgroundImage:[UIImage imageNamed:
@"SearchBar.png"] forBarMetrics:UIBarMetricsDefault];
UISearchBar が縦向きと横向きの両方で画面の幅を完全に埋めてほしい..
どんな助けでも本当に感謝しています:)
iPhone 5でXcode 4.5、iOS 6を使用しています。
NavigationItem.titleView を使用して UISearchBar をホストしたいだけです。この方法の方が良いと思います。
皆さんありがとう