Я хочу гиперссылку в моем приложении iPhone, например, как в HTML:
<a href="www.yahoo.com"> Click here </a>
Как я могу сделать это в Objective-C?
Самое главное, что я не хочу показывать фактическую ссылку, я просто хочу показать какой-то текст, например “нажмите здесь”, а затем загрузит ссылку.
В настоящее время я использую приведенный ниже код. Но, как я сказал вам, я не хочу показывать ссылку, вместо этого хочу что-то вроде “нажмите здесь”.
textView.text = @"http://stackoverflow.com";
textView.dataDetectorTypes = UIDataDetectorTypeLink;
Попробуйте следующим образом:
UIButton *btnFaceBook = [UIButton buttonWithType:UIButtonTypeDetailDisclosure];
[btnFaceBook setFrame:CGRectMake(20, 290, 280, 30)];
[btnFaceBook setBackgroundColor:[UIColor clearColor]];
[btnFaceBook.titleLabel setFont:[UIFont boldSystemFontOfSize:16]];
[btnFaceBook addTarget:self action:@selector(followFacebook) forControlEvents:UIControlEventTouchUpInside];
[btnFaceBook setTitle:@"Click Here" forState:UIControlStateNormal];
[contentView addSubview:btnFaceBook];
ниже – это функция, открывающая ссылку:
-(void) followFacebook{
[[UIApplication sharedApplication]openURL:[NSURL URLWithString:@"http://facebook.com/"]];
}
Apple имеет запись, которая должна рассказать вам все, что вам нужно знать, чтобы сделать это.
Резюме состоит в том, что вы создаете категорию на NSAttributedString
, чтобы вы могли передать ей строку и URL-адрес, и она создаст атрибутированную строку, которая выглядит как гиперссылка (например, синяя и подчеркнутая) и имеет URL как атрибут.
Вы можете попробовать это с помощью UIButton
. Просто установите заголовок кнопки как “нажмите здесь” или что угодно, и откройте ссылку, когда пользователь нажимает кнопку.
-(void)buttonClicked {
// code to open link
}