我正在使用Google Places API并以编程方式呈现视图控制器。
它有一个搜索栏,在视图出现时自动选择,在显示视图时出现标准浅灰色键盘。
使用下面的代码,我将如何在呈现的viewController'Dark'中制作键盘?
var opened: String = "NO"
class selectAddress: UIViewController {
// Present the Autocomplete view controller when the button is pressed.
//@IBAction func autocompleteClicked(_ sender: UIButton) {
override func viewDidAppear(_ animated: Bool) {
let autocompleteController = GMSAutocompleteViewController()
autocompleteController.delegate = self
autocompleteController.tableCellBackgroundColor = UIColor(red: CGFloat(35/255.0), green: CGFloat(35/255.0), blue: CGFloat(43/255.0), alpha: 1.0)
autocompleteController.primaryTextColor = UIColor.gray
autocompleteController.tableCellSeparatorColor = UIColor.white
autocompleteController.primaryTextHighlightColor = UIColor.white
autocompleteController.secondaryTextColor = UIColor.gray
GMSAutocompleteViewController().tableCellSeparatorColor = UIColor.white
let filter = GMSAutocompleteFilter()
filter.type = .establishment //suitable filter type
//filter.country = "GB" //appropriate country code
autocompleteController.autocompleteFilter = filter
let barTint = UINavigationBar.appearance()
barTint.barTintColor = UIColor(red: CGFloat(48/255.0), green: CGFloat(48/255.0), blue: CGFloat(59/255.0), alpha: 1.0)
if opened == "NO" {
self.present(autocompleteController, animated: true, completion: nil)
opened = "YES"
}else{
opened = "NO"
performSegue(withIdentifier: "venueSave", sender: self)
}
// }
}
}
extension selectAddress: GMSAutocompleteViewControllerDelegate {
// Handle the user's selection.
func viewController(_ viewController: GMSAutocompleteViewController, didAutocompleteWith place: GMSPlace) {
print("Place name: \(place)")
print("Place address: \(place.formattedAddress)")
print("Place attributions: \(place.attributions)")
print("Longitude: \(place.coordinate.longitude)")
print("Latitude: \(place.coordinate.latitude)")
print("Address components: \(place.addressComponents)")
let city = place.addressComponents?[2].name
print("CITYYYY \(city!)")
/*
var request = URLRequest(url: URL(string: "https://www.asmserver.co.uk/barduo/addvenue.php")!)
request.httpMethod = "POST"
let postString = "name=\(facebookID!)&email=\(email!)&firstname=\(firstName!)&lastname=\(lastName!)&link=\(link!)"
print(postString)
request.httpBody = postString.data(using: .utf8)
let task = URLSession.shared.dataTask(with: request) { data, response, error in
guard let data = data, error == nil else { // check for fundamental networking error
print("error=\(error)")
return
}
if let httpStatus = response as? HTTPURLResponse, httpStatus.statusCode != 200 { // check for http errors
print("statusCode should be 200, but is \(httpStatus.statusCode)")
print("response = \(response)")
}
let responseString = String(data: data, encoding: .utf8)
print("*****\(responseString!)")
defaults.set("\(responseString!)", forKey: "id")
DispatchQueue.main.async {
self.performSegue(withIdentifier: "goNext", sender: self)
}
}
task.resume()
*/
dismiss(animated: true, completion: nil)
}
func viewController(_ viewController: GMSAutocompleteViewController, didFailAutocompleteWithError error: Error) {
// TODO: handle the error.
print("Error: ", error.localizedDescription)
}
// User canceled the operation.
func wasCancelled(_ viewController: GMSAutocompleteViewController) {
dismiss(animated: true, completion: nil)
}
// Turn the network activity indicator on and off again.
func didRequestAutocompletePredictions(_ viewController: GMSAutocompleteViewController) {
UIApplication.shared.isNetworkActivityIndicatorVisible = true
}
func didUpdateAutocompletePredictions(_ viewController: GMSAutocompleteViewController) {
UIApplication.shared.isNetworkActivityIndicatorVisible = false
}
func viewController(viewController: GMSAutocompleteViewController!, didFailAutocompleteWithError error: NSError!) {
// TODO: handle the error.
print("Error: ", error.description)
}
}
答案 0 :(得分:1)
我使用了以下行:
UITextField.appearance(whenContainedInInstancesOf:[UISearchBar.self])。keyboardAppearance = .dark
答案 1 :(得分:0)
尝试library(dplyr)
library(tidyr)
df %>%
group_by(fac, Week = factor(paste0("Week",
week(as.Date(date))), levels = paste0("Week", 1:10))) %>%
slice(1) %>%
select(-date) %>%
spread(Week, sessions)
。
另外,请尝试不要为这样的简单问题复制粘贴不必要的代码。人们可能会感到困惑。