我有一张非常宽的桌子。 这就是我在X轴和Y轴上都有一个滚动条的原因。
var resultSearchController = UISearchController()
//itemlist
var itemList = [item1, item2, item3, item4,..]
//configured searchbar
var issearchactive:Bool = false
func viewDidLoad() {
self.resultSearchController = UISearchController(searchResultsController: nil)
self.resultSearchController.searchResultsUpdater = self
self.resultSearchController.searchBar.delegate = self
self.definesPresentationContext = true
self.resultSearchController.dimsBackgroundDuringPresentation = false
self.resultSearchController.searchBar.placeholder = "Search for Items"
self.resultSearchController.searchBar.searchBarStyle = UISearchBarStyle.prominent
self.resultSearchController.searchBar.sizeToFit()
}
override func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
if issearchactive {
return filterSearch.count
}
return itemList.count
}
override func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
var item = itemList()
if issearchactive {
item = filterSearch[indexPath.row]
} else {
item = itemList[indexPath.row]
}
let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "cellIdentifier", for: indexPath)
cell.titleLabel.text = item
return cell
}
func updateSearchResults(searchText:String) {
filterSearch = itemList.filter { obj in
return obj.name.lowercased().contains(searchText.lowercased())
}
self.collectionView?.reloadData()
}
override func textFieldShouldBeginEditing(_ textField: UITextField) -> Bool {
issearchactive = true
return true
}
override func textFieldDidEndEditing(_ textField: UITextField) {
updateSearchResults(searchText:textfield.text)
issearchactive = false
}
override func textField(_ textField: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String) -> Bool {
updateSearchResults(searchText:textfield.text)
return true
}
在桌子内的一个单元格中,我放了一个下拉菜单。 这非常有效。 但是如果我打开下拉菜单中的一行,那么下拉菜单会隐藏在表的末尾,我必须向下滚动才能看到它。 我可以通过制作表css
使其可见 overflow-x: auto;
overflow-y: scroll;
然后我丢失了桌上的滚动条。 即使我有滚动条,有没有办法让下拉菜单显示?
答案 0 :(得分:-1)
尝试使用z-index属性,它指定元素的堆栈顺序。堆栈顺序较大的元素始终位于堆栈顺序较低的元素前面。注意:z-index仅适用于定位元素(位置:绝对,位置:相对或位置:固定)。默认值:auto。