Как связать кнопку с веб-представлением другого контроллера, имеющего ссылку, которая изменяется в зависимости от нажатой ячейки?
У меня есть кнопка, которая должна открыть веб-вид на другой контроллер в модальном режиме. в настоящее время кнопка выполняет код, который вы видите ниже. Я хотел бы, чтобы кнопка открывала веб-просмотр напрямую. ссылка изменяется, потому что это программа чтения RSS-сообщений, и поэтому, основываясь на нажатой ячейке, изменяется ссылка кнопки, которая должна открывать веб-просмотр.
это код, который управляет контроллером, который появляется после нажатия на ячейку
class FeedItemWebViewController: UIViewController, UIWebViewDelegate {
@IBOutlet weak var textView: UITextView!
var link: String? = nil
var descriptionTesto:String? = nil
override func viewDidLoad() {
super.viewDidLoad()
self.textView.text = descriptionTesto
}
@IBAction func apri(_ sender: UIBarButtonItem) {
guard let url = URL(string: self.link ?? "") else { return }
UIApplication.shared.open(url, options: [:], completionHandler: nil)
}
}
Вот где он управляет контроллером, где я вошел в веб-просмотр
class OpenSafariController: UIViewController, UIWebViewDelegate {
@IBOutlet weak var myWebView: UIWebView!
override func viewDidLoad() {
super.viewDidLoad()
}
@IBAction func ritornaLista(_ sender: UIBarButtonItem) {
self.presentingViewController?.presentingViewController?.dismiss(animated: false, completion: nil)
}
}
1 ответ
Удалите контроллер веб-просмотра, который не нужен. импорт SafariServices. вот код, который нужно надеть на кнопку
@IBAction func apri(_ sender: UIBarButtonItem) {
let svc = SFSafariViewController(url: URL(string: self.link ?? "")!)
self.present(svc, animated: true, completion: nil)
}