Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/35.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone UISearchBar:单击时如何停止调整大小?_Iphone_Objective C_Ios_Uisearchbar - Fatal编程技术网

Iphone UISearchBar:单击时如何停止调整大小?

Iphone UISearchBar:单击时如何停止调整大小?,iphone,objective-c,ios,uisearchbar,Iphone,Objective C,Ios,Uisearchbar,我有一个UISearchBar(带有UISearchDisplayController)作为UINavigationBar的标题视图。导航栏中的搜索栏两侧也有两个按钮 单击ui搜索栏时,搜索栏变宽并覆盖右侧的按钮 我怎样才能阻止它变得更宽 事情尝试过,但没有成功--> 如果设备旋转,则加宽的搜索栏将变为原始大小。 因此,尝试在-searchBarTextDidBeginEditing中调用[searchBar setNeedsLayout] IB 编辑:没有提到,但这是在iPhone上(我们

我有一个
UISearchBar
(带有
UISearchDisplayController
)作为
UINavigationBar
的标题视图。导航栏中的搜索栏两侧也有两个按钮

单击
ui搜索栏
时,搜索栏变宽并覆盖右侧的按钮

我怎样才能阻止它变得更宽

事情尝试过,但没有成功-->

  • 如果设备旋转,则加宽的搜索栏将变为原始大小。 因此,尝试在-
    searchBarTextDidBeginEditing中调用
    [searchBar setNeedsLayout]
  • IB

编辑:没有提到,但这是在iPhone上(我们可以在iPad的工具栏中放置
搜索栏

事实上,如果搜索栏被放置在所需大小的UIView中,那么它被设置为导航栏的标题视图,它不会变宽

但是。。。由于您无法按“取消”按钮来显示/不显示您希望的内容,因此我意识到它没有多大用处。

(如etc中所示)

可能重复,答案:@CollinPrice很遗憾,您提到的链接中的答案不起作用:(添加[self.searchBar setFrame:CGRectMake(0.0,0.0,150.0,44.0)];例如在searchBarTextDidBeginEditing中:(UISearchBar*)searchBar方法什么也没做…似乎触发了SearchDisplayControllerdBeginSearch:但它还是有点变宽了-一定是标题视图的自动大小。是的,我想我们只需要将UISearchBar包含在UIView中并具有所需的宽度。@s-t这太聪明了-非常感谢。帮了我的忙!