搜索控制器在swift中使用tableview滚动

问题描述:

使用tableview的搜索控制器工作正常。我必须设置位置并在桌面视图标题中隐藏/显示正在工作的搜索控制器,当它在第一次没有显示时,在浏览栏中点击搜索栏按钮之后进行滚动。当我双击搜索按钮搜索栏控制器显示。我必须表现出与tableview中后,搜索按钮的单个点击搜索控制器滚动搜索控制器在swift中使用tableview滚动

这是搜索控制器的代码

let searchController = UISearchController(searchResultsController: nil) 
override func viewDidLoad() { 
     super.viewDidLoad() 

{ 
    tableView.tableHeaderView = nil 

searchController.searchResultsUpdater = self 

     searchController.hidesNavigationBarDuringPresentation = false 

     searchController.dimsBackgroundDuringPresentation = false 

     tableView.tableHeaderView = searchController.searchBar 

     searchController.delegate = self 

     searchController.searchBar.sizeToFit() 


     self.searchController.searchBar.delegate = self 

     tableView.tableHeaderView = nil 


} 



func updateSearchResults(for searchController: UISearchController) { 


     _ = kidsData 

     let searchToSearch = searchController.searchBar.text 

     if(searchToSearch == "") 
     { 
      self.kidsData = self.KidsDataDuplicate 

     } 
     else{ 

      self.kidsData.removeAll() 

      let itemsarray = self.KidsDataDuplicate 

      var forkidsinArray = \[String\]() 

      for Kids in itemsarray { 

       forkidsinArray.append(Kids.name) 
       if(Kids.name.range(of: searchToSearch!, options: .caseInsensitive) != nil) 
       { 
        self.kidsData.append(Kids) 

       } 

      } 
      } 

     self.tableView.reloadData() 
    } 

hide and unhide code 


    var launchBool: Bool = false { 
     didSet { 
      if launchBool == true { 

       tableView.tableHeaderView = searchController.searchBar 
         let indexPath = IndexPath(row: 0, section: 0) 
         self.tableView.scrollToRow(at: indexPath, at: .middle, animated: true) 


      } else { 
       tableView.tableHeaderView = nil 
       myInt = 0 
      } 
     } 
    } 


@IBAction func NAVSearchButton(_ sender: UIBarButtonItem) { 
     launchBool = !launchBool  
    } 

enter image description here

后,当我在导航搜索点击搜索按钮的实现代码如下滚动酒吧控制器不显示时,我双击搜索按钮其显示如何修复搜索控制器与tableview滚动请帮助我

如果我理解它正确然后添加在navigation item之后单独UISearchbar里面的属性检查器,然后在UITableView之下加上。固定约束。现在您的搜索栏将始终可见。在你的案例中,搜索栏是设置到表头视图。所以,当你滚动搜索栏也滚动

+0

如何修复搜索控制器滚动tableview时。当我点击搜索按钮显示和隐藏选项应该工作 – naga