Как сделать так, чтобы панель вкладок перемещалась между веб-страницами с помощью одного wkwebview?
Я использую wkwebview
Чтобы отобразить веб-страницу, у меня есть три веб-страницы. Я хочу использовать панель вкладок для перемещения между этими тремя страницами. Я чувствую каждый wkwebview
страница может занять слишком много ресурсов.
Так что я просто хочу использовать только один wkwebview
загрузить три страницы. при нажатии на вкладку загружается страница веб-страницы. т. е. при нажатии на tab1 загружается страница1, нажимается tab2, загружается страница2, то же самое для tab3 и page3. Теперь я могу просто загрузить страницу с wkwebview
Я новичок в IOS.
если вкладка не может реализовать это, что мне делать?
3 ответа
Если вы хотите что-то вроде, то добавьте UITabbar
с 3 табитем внутри вашего ViewController
а затем установить делегат этого с вашим ViewController
, Сейчас реализуем didSelect item
метод UITabbar
и загрузите URL в соответствии с вкладкой.
func tabBar(_ tabBar: UITabBar, didSelect item: UITabBarItem) {
switch item.title! {
case "First":
self.webView.load(URLRequest(url: url1))
case "Second":
self.webView.load(URLRequest(url: url2))
default:
self.webView.load(URLRequest(url: url3))
}
}
Вы можете переопределить метод handleNavBackButton()
чтобы получить обратный звонок на кнопку назад.
override func handleNavBackButton() {
if webViewData.canGoBack {
webViewData.goBack()
} else {
_ = self.navigationController?.popViewController(animated: true)
}
}
Пожалуйста, дайте мне знать, если это работает для вас:)
Если вы не используете две разные сцены, вам нужно использовать комбинацию UIViewController + UIToolbar. Добавьте два ваших UIBarButtonItem(s) на панель инструментов. Установите их действие на желаемый URL, и все готово.