Ios “空时打开UIAlertViewController”&引用;排列
我正在尝试制作一个功能,这样当你按下一个按钮时,你就会打开餐馆的网站,它运行良好,但有些餐馆没有网站Ios “空时打开UIAlertViewController”&引用;排列,ios,arrays,swift,function,button,Ios,Arrays,Swift,Function,Button,我正在尝试制作一个功能,这样当你按下一个按钮时,你就会打开餐馆的网站,它运行良好,但有些餐馆没有网站 var OnlineMenuLinks = ["https://static.wixstatic.com/media/ed1b11_59335d19e484482e8c0dc9ef0caee605~mv2.jpg/v1/fill/w_708,h_992,al_c,q_85/ed1b11_59335d19e484482e8c0dc9ef0caee605~mv2.jpg","","","http:/
var OnlineMenuLinks = ["https://static.wixstatic.com/media/ed1b11_59335d19e484482e8c0dc9ef0caee605~mv2.jpg/v1/fill/w_708,h_992,al_c,q_85/ed1b11_59335d19e484482e8c0dc9ef0caee605~mv2.jpg","","","http://stackoverflow.com/"]
@IBAction func OpenOnline(_ sender: Any) {
let url = URL(string: OnlineLinks[MyIndex])!
if #available(iOS 10.0, *) {
UIApplication.shared.open(url, options: [:], completionHandler: nil)
} else {
UIApplication.shared.openURL(url)
}
}
链接目前已打开,一切正常。
虽然我希望当数组中有一个空的“
时,UIAlertController会出现,并说例如“这家餐厅没有网站”。是否可能
谢谢你的帮助!:) 是的,这是可能的
func open(_ url: URL?) {
if let url = url {
if #available(iOS 10, *) {
UIApplication.shared.open(url, options: [:],completionHandler: { (success) in
print("Open Safari \(success)")
})
} else {
let success = UIApplication.shared.openURL(url)
print("Open Safari \(success)")
}
}else{
let alert = UIAlertController(title: "Empty!", message: "This restaurant has no website.", preferredStyle: .alert)
let okAction = UIAlertAction(title: "Ok", style: .default, handler: nil)
alert.addAction(okAction)
present(alert, animated: true, completion: nil)
}
}
是的,这是可能的
func open(_ url: URL?) {
if let url = url {
if #available(iOS 10, *) {
UIApplication.shared.open(url, options: [:],completionHandler: { (success) in
print("Open Safari \(success)")
})
} else {
let success = UIApplication.shared.openURL(url)
print("Open Safari \(success)")
}
}else{
let alert = UIAlertController(title: "Empty!", message: "This restaurant has no website.", preferredStyle: .alert)
let okAction = UIAlertAction(title: "Ok", style: .default, handler: nil)
alert.addAction(okAction)
present(alert, animated: true, completion: nil)
}
}
不要检查字符串的有效性。在您的情况下,每次
URL
无效时都应该显示一个错误(空字符串
不会生成有效的URL
实例)
如果MyIndex
超过数组长度,可能需要检查数组计数
guard OnlineLinks.count > MyIndex else {
// throw an error
}
不要检查字符串的有效性。在您的情况下,每次
URL
无效时都应该显示一个错误(空字符串
不会生成有效的URL
实例)
如果MyIndex
超过数组长度,可能需要检查数组计数
guard OnlineLinks.count > MyIndex else {
// throw an error
}
非常感谢。我使用@iWheelBuy代码打开链接,但我使用了您的UIAlertController,因此我可以忽略此消息:)谢谢!我使用@iWheelBuy代码打开链接,但我使用了您的UIAlertController,因此我可以忽略此消息:)