Ios UISearchBar拒绝更改宽度?

Ios UISearchBar拒绝更改宽度?,ios,objective-c,uisearchbar,Ios,Objective C,Uisearchbar,我正在将UISearchBar添加到UINavigation Bar中(这是一个基于情节提要的应用程序): 无论我将搜索栏的宽度、高度和位置设置为什么,它都不会更改搜索栏的高度/宽度。它的宽度和高度总是一样的 有人能建议如何修改吗?我曾经遇到过同样的问题,我所做的是将搜索栏添加到容器视图中(我在显示“取消”按钮时遇到问题),并将容器视图添加为左栏项目 - (UIBarButtonItem *)createSearchBarHolder { UIView *searchBarCon

我正在将UISearchBar添加到UINavigation Bar中(这是一个基于情节提要的应用程序):

无论我将搜索栏的宽度、高度和位置设置为什么,它都不会更改搜索栏的高度/宽度。它的宽度和高度总是一样的


有人能建议如何修改吗?

我曾经遇到过同样的问题,我所做的是将搜索栏添加到容器视图中(我在显示“取消”按钮时遇到问题),并将容器视图添加为左栏项目

 - (UIBarButtonItem *)createSearchBarHolder {
       UIView *searchBarContainer = [[UIView alloc] initWithFrame:navigationSearchBar.frame];
       searchBarContainer.autoresizingMask =  UIViewAutoresizingFlexibleWidth;
      [searchBarContainer addSubview:navigationSearchBar];
      navigationSearchBar.autoresizingMask = UIViewAutoresizingFlexibleRightMargin | UIViewAutoresizingFlexibleWidth;
      UIBarButtonItem *searchBarHolder = [[UIBarButtonItem alloc] initWithCustomView:searchBarContainer];
      return searchBarHolder;
  }
在viewDidLoad中:

     NSArray *leftBarButtons = [[NSArray alloc] initWithObjects:[self createSearchBarHolder], nil];
     self.navigationItem.leftBarButtonItems = leftBarButtons;

目前还不清楚您希望搜索栏的大小。如果将其设置为导航项的标题视图,它将针对导航栏上的任何按钮进行调整,并在旋转时进行调整。这就是你想要的吗

- (void)viewDidLoad {
    [super viewDidLoad];
    UISearchBar *sb = [[UISearchBar alloc] init];
    self.navigationItem.titleView = sb;
}
- (void)viewDidLoad {
    [super viewDidLoad];
    UISearchBar *sb = [[UISearchBar alloc] init];
    self.navigationItem.titleView = sb;
}