Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/19.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
Ios 手动隐藏搜索栏控制器_Ios_Swift - Fatal编程技术网

Ios 手动隐藏搜索栏控制器

Ios 手动隐藏搜索栏控制器,ios,swift,Ios,Swift,当搜索栏控制器位于iOS 11中的导航栏中时,如何手动隐藏该控制器?我试过一些方法,但都不管用。我已经包括了我设置的搜索栏的图像。我希望它回到正常的导航控制器,通常是在我下拉显示搜索栏之前。这似乎是我缺少的一行代码,但出于某种原因,我就是找不到那行代码。我希望这种情况发生在视图出现时,因此每当用户返回此屏幕时,搜索栏都会隐藏。我该怎么做 以前 当我向上滚动时 试试这个 searchController.active = false 或swift 4+ searchController.isA

当搜索栏控制器位于iOS 11中的导航栏中时,如何手动隐藏该控制器?我试过一些方法,但都不管用。我已经包括了我设置的搜索栏的图像。我希望它回到正常的导航控制器,通常是在我下拉显示搜索栏之前。这似乎是我缺少的一行代码,但出于某种原因,我就是找不到那行代码。我希望这种情况发生在视图出现时,因此每当用户返回此屏幕时,搜索栏都会隐藏。我该怎么做

以前

当我向上滚动时 试试这个

searchController.active = false
swift 4+

searchController.isActive = false
迅捷的

要隐藏搜索栏,请使用

navigationItem.searchController = nil
navigationItem.searchController = searchController
要再次显示搜索栏,请使用

navigationItem.searchController = nil
navigationItem.searchController = searchController

其中,
searchController
是您的控制器的
UISearchController
不起作用。这是我尝试的第一件事。但它实际上并没有向上滚动视图以隐藏搜索栏。我甚至尝试设置tableview的内容偏移量,但都没有效果。尝试使用-navigationItem.HideseArchBarWhenScrolling=true我不想将其设为零,我只想隐藏它,以便当用户再次向下滚动时,它会像平常一样显示,然后使用
navigationItem.HideseArchBarWhenScrolling=true
不确定这你试过在ViewDidDisplay中重新加载内容吗?是的,我明白了。您能否共享相关代码以获得更清晰的图片?您是否尝试过:searchController.searchBar.isHidden=true