gpt4 book ai didi

swift - GooglePlacesAutocomplete 在事件时向上移动搜索栏

转载 作者:搜寻专家 更新时间:2023-11-01 05:43:46 26 4
gpt4 key购买 nike

目前,我按照这些步骤使用 Google Places 实现了自动完成搜索栏。

https://developers.google.com/places/ios-api/autocomplete#add_an_autocomplete_ui_control

到目前为止一切顺利,它可以正常工作,但是当我点击搜索栏时它会向下移动,这是我不想要的。

来自: enter image description here

收件人(点击时):

enter image description here

我现在的代码和教程中的完全一样(我也试过之后的错误修复,没有用)

var resultsViewController: GMSAutocompleteResultsViewController?
var searchController: UISearchController?
var resultView: UITextView?

override func viewDidLoad() {
super.viewDidLoad()
self.title = "Event-Filter";

resultsViewController = GMSAutocompleteResultsViewController()
resultsViewController?.delegate = self

searchController = UISearchController(searchResultsController: resultsViewController)
searchController?.searchResultsUpdater = resultsViewController

let subView = UIView(frame: CGRect(x: 0, y: 0.0, width: self.view.frame.width, height: 45.0))

subView.addSubview((searchController?.searchBar)!)
view.addSubview(subView)
searchController?.searchBar.sizeToFit()
searchController?.searchBar.placeholder = "Enter a specific place!";

navigationController?.navigationBar.isTranslucent = false
searchController?.hidesNavigationBarDuringPresentation = false

// When UISearchController presents the results view, present it in
// this view controller, not one further up the chain.
definesPresentationContext = true
}

override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}

//Handle User Selection

func resultsController(_ resultsController: GMSAutocompleteResultsViewController, didAutocompleteWith place: GMSPlace) {
searchController?.isActive = false
searchController?.searchBar.text = place.formattedAddress;
print("Place name: \(place.name)")
print("Place address: \(place.formattedAddress ?? "not found")")
print("Place lat:" + String(place.coordinate.latitude))

}

func resultsController(_ resultsController: GMSAutocompleteResultsViewController,
didFailAutocompleteWithError error: Error){
let backend = BackendService()
backend.alert(view: self, message: error.localizedDescription, title: "Something went wrong!")
}

// Turn the network activity indicator on and off again.
func didRequestAutocompletePredictions(forResultsController resultsController: GMSAutocompleteResultsViewController) {
UIApplication.shared.isNetworkActivityIndicatorVisible = true
}

func didUpdateAutocompletePredictions(forResultsController resultsController: GMSAutocompleteResultsViewController) {
UIApplication.shared.isNetworkActivityIndicatorVisible = false
}

最佳答案

好吧,我遇到了同样的问题,我通过使用以下代码行使其正常工作:

definesPresentationContext = false

我对它进行了很多测试,它对我来说工作得很好。

关于swift - GooglePlacesAutocomplete 在事件时向上移动搜索栏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45978407/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com