我非常新,遵循Apple网站上快速入门指南。
我正在尝试创建一个选项卡式应用程序,每个选项卡是礼物的价格范围,每个礼物是一个带有自己的图像和标签的tableviewcell。我还希望能够单击tableviewcell打开SFSafariViewController,并直接在线链接到该礼物。
到目前为止,我已经能够创建选项卡式应用程序,为每个选项卡创建表视图和单元格作为静态列表,使用图像和标签设置tableviewcell,但是我对如何做到这一点感到很困惑,因此可以单击每个tableviewcell应用中的网址。
只是想看看是否有人做过类似的事情或可以帮助我。到目前为止,我几乎已在情节提要中完成了所有工作,如果存在情节提要解决方案,那将是惊人的。如果没有,那么任何帮助都将是巨大的。谢谢!
最佳答案
您要做的是利用tableView:didSelectRowAtIndexPath:
。这是一个UITableViewDelegate
方法,可在单击单元格时随时调用。您可以做的是检查所选单元格的IndexPath.row
,并创建一个SFSafariViewController
实例,以打开相应的URL
:
import SafariServices
import UIKit
class YourViewController: UITableViewController {
...
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
var controller: SFSafariViewController!
switch indexPath.row {
case 0:
let url = URL(string: "www.website1.com")!
controller = SFSafariViewController(url: url)
case 1:
let url = URL(string: "www.website2.com")!
controller = SFSafariViewController(url: url)
default:
break
}
present(controller, animated: true, completion: nil)
}
}
关于ios - 尝试使用可启动SafariViewController中的链接的tableviewcell快速创建带标签的应用程序,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/58440393/