Гиперссылка в Swift

swift
xcode
swift4
ios

#1

Во вкладке о нас хочу реализовать такую тему, как при нажатии на адрес сайта, будет открываться браузер с сайтом (который я указал) и при нажатии на почту, будет открываться почта (чтобы человек мог написать нам). И ещё, я создал новый класс AboutViewController.swift и привязал кнопки к этому классу, но они не привязаны(кружок не закрашен).


#2

нажми в сториборде на объекты и проверь связь


вот мои связи. если все привязано в сториборде то пересобери проект. если нет - тяни связи. проверь чтоб был правильно класс подписан


#3

Хм, вроде есть


#4

тогда напишите в методах кнопок какие то принты. запустите проект и проверьте. бывает Xcode тормозит


#5

у Вас есть класс Exit в проекте?


#6

Неа, а как это сделать?
Я поэтому и спрашиваю про это


#7

  1. В сториборде выбери нужный экран
  2. В инспекторе выбери класс (твой новый), который нужно (3), и по новой перетащи аутлеты (можно прямо на те же названия)

#8

Кстати, у меня так и не получилось сделать гиперссылку в приложении

при нажатии на кнопку приложение крашится. Кто знает как решить?


#9
if let url = URL(string: "http://www........") {
            UIApplication.shared.open(url, options: [:], completionHandler: nil)
        }

#10

нужно всегда проверять создаётся ли ссылка - if let url = URL...


#11

я для открытия страницы в браузере использую WKWebView


#12

Не работает, крашитcя.


#13

А как WKWebView привязать к кнопке?


#14

делаете новый контроллер. на него кидает WKWebView и на кнопку вешаете переход. потом читаете первый ответ и вперед


#15

Спасибо, сейчас попробую!)


#16

Вы включали разрешение трафика в info.plist?


#17

Нет, не включал. А как именно называется в info.plist?


#18


#19

где две стрелочки вниз и вверх туда наведите (на любой параметр) - появится плюс: добавляете параметр App Transport Security Settings. Далее внутри него добавляете Allow Arbitrary Loads in Web Content и ставите ему YES

Там всего 3 параметра для разных типов загрузок - разберётесь ))


#20

Для открытия просто ссылки явно проще UIApplication.shared.open (1 строка кода) :slight_smile: она и так встроенный браузер открывает )) Единственный минус - вне приложения ))