#iphone #objective-c #ipad #uitextfield
#iPhone #objective-c #iPad #uitextfield
Вопрос:
Я хотел бы иметь возможность красиво форматировать URL-адрес в моем UITextField. Допустим, текст UITextField равен
textField.text = @"Hi this is a page for my website http://www.mywebsite.com";
Я бы хотел, чтобы это автоматически подчеркивалось, помечалось как гиперссылка, и когда пользователь нажимает на ссылку, он открывает сайт. Это похоже на любой клиент Twitter, который у вас есть (tweetdeck, tweetbot и т.д.). Как мне сделать это простым способом?
Ответ №1:
Вместо этого вы можете использовать UITextView и задать свойству dataDetectorTypes типы ссылок, которые вы хотите иметь возможность обрабатывать.
Комментарии:
1. существует ли делегат, который вызывается при нажатии на ссылку? или как мне с этим справиться?
2. @aherlambang: В документации для dataDetectorTypes говорится: «При нажатии текстовое представление открывает приложение, ответственное за обработку типа URL-адреса, и передает ему URL-адрес».
3. Я только что попробовал это, и кажется, что он открывает URL-адрес в полном окне браузера.. что, если я хочу, чтобы он открывался в UIModalView, как мне это сделать?
4. Если вы создаете подкласс UIApplication, можете ли вы перехватить вызов
openURL:
? Вам нужно было бы определить, когда openURL даже вызывается первым — и это может оказаться ненадежным, если система изменит способ открытия URL-адресов в будущем.
Ответ №2:
эй, это действительно просто, вы можете настроить UITextFiled для обнаружения ссылок, вот так:
myTextView.dataDetectorTypes = UIDataDetectorTypeAll
ознакомьтесь с моим руководством по этому вопросу на моем сайте для получения дополнительной информации
http://www.sdkboy.com