Как создать кнопку, которая ссылается на Safari? - PullRequest
1 голос
/ 19 августа 2011

По юридическим причинам я обязан показать Условия использования в своем приложении, PDF на внешнем сервере.Я думаю, что было бы проще всего создать элемент UIBarButton, а затем создать IBAction, который запускает ссылку в Safari.

Поэтому я создаю кнопку:превратить это в неатомное свойство и синтезировать в моем файле реализации, верно?Я продолжаю создавать IBAction:

-(IBAction)legalButtonPressed:(id)sender;

Я вхожу в свой файл реализации, и вот где возникает проблема.Когда дело доходит до определения этих действий, я запутался.Поскольку я новичок в разработке для iOS, я мог бы использовать некоторые рекомендации.Я не знаю, как заставить ссылку в сафари в действии.Любая помощь будет принята с благодарностью!

Спасибо!

Ответы [ 4 ]

6 голосов
/ 19 августа 2011

IBOutlet и IBActions используются для соединений Interface Builder.Если у вас есть UIBarButtonItem в xib-файле, вы можете подключить его действие к контроллеру, щелкнув правой кнопкой мыши на объекте владельца файла.То же самое с розеткой.

Как только вы подключите действие в контроллере к кнопке в файле xib (я не вижу здесь никакой необходимости в розетке), вы просто реализуете метод следующим образом:

-(IBAction)legalButtonPressed:(id)sender {
     [[UIApplication sharedApplication] openURL:[NSURL URLWithString: @"http://yourdomain.com/legal.pdf"]];
}

это автоматически откроет сафари с указанным URL

5 голосов
/ 19 августа 2011

Ознакомьтесь с документацией UIApplication, в ней есть метод openURL, который может оказаться полезным.

1 голос
/ 19 августа 2011

Другой вариант - включить ваш юридический текст в UITextView.

Пример: Нажав Присоединиться, вы соглашаетесь с компанией Условия обслуживания, найденные здесь: http://www.site.com/tos.html и Политика конфиденциальности, найденная здесь: http://www.site.com/privacy.html

Убедитесь, что в UITextView включена функция обнаружения ссылок, и она автоматически распознает URL-адреса. Любые клики по этим URL автоматически запускают Safari.

0 голосов
/ 19 августа 2011

Хотя вы можете сделать этот подход (т.е. запустить ссылку в Safari).Я бы посоветовал вам как можно больше сохранить пользователя в своем приложении.Я предполагаю, что эти ЮРИДИЧЕСКИЕ УСЛОВИЯ являются документом HTML?

Вы можете сделать это, используя UIWebView.Запустите веб-просмотр и сделайте это -

NSURL *url        = [NSURL URLWithString:webAddress];
NSURLRequest *req = [NSURLRequest requestWithURL:url];
[webView loadRequest:req];

Это откроет URL только в вашем приложении!Вы можете сделать UIWebView открытым как модальное окно или многими другими способами ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...