点击文本部分触发点击事件

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

 

-(void)loadeView{

 UITextView *textview=[[UITextView alloc]initWithFrame:CGRectMake(0, 90, 200, 300)];

    textview.delegate=self;

    textview.editable=NO;//必须为NO 不然不走回调delegate API

    [self.view addSubview:textview];

    NSMutableAttributedString *attributedstring=[[NSMutableAttributedString alloc]initWithString:@"请点击这儿,你会发现好玩的"];

//    NSFontAttributeName 根据range来设置字体类型和大小

    [attributedstring addAttribute:NSFontAttributeName value:[UIFont fontWithName:@"Zapfino" size:14] range:NSMakeRange(0, 5)];

    [attributedstring addAttribute:NSForegroundColorAttributeName value:[UIColor blueColor] range:NSMakeRange(1, 2)];

//    NSForegroundColorAttributeName 根据range来设置字体颜色

    [attributedstring addAttribute:NSForegroundColorAttributeName value:[UIColor redColor] range:NSMakeRange(10, 2)];

//   NSLinkAttributeName 点击range范围触发方法,方法里的url为value对应的@“click”

    [attributedstring addAttribute:NSLinkAttributeName value:@"click" range:NSMakeRange(1, 2)];

  textview.attributedText=attributedstring;

}

#pragma marks---UITextViewDelegate

-(BOOL)textView:(UITextView *)textView shouldInteractWithURL:(NSURL *)URL inRange:(NSRange)characterRange

{

//    URL为上面设置NSLinkAttributeName时的value,characterRange为range

    NSLog(@"%@",URL);

    return YES;

}

 

转载于:https://my.oschina.net/lkeageer/blog/705160

你可能感兴趣的:(点击文本部分触发点击事件)