2 ghf00123 ghf00123 于 2016.02.03 16:58 提问

UITextView 添加链接NSLinkAttributeName,点击区域大于设定的区域

请问大家:使用UITextView添加链接 NSLinkAttributeName 时,有没有遇到过这种情况:点击区域实际是在设定范围内放大了(上方和左方为两个文字的宽或高,右边全部空白区域,如何解决? 谢谢!
图片说明
图片说明
图片说明

代码如下:
UITextView *tipsTextView = [[UITextView alloc] initWithFrame:CGRectMake(vPadding, 5, infoBgImgView.width - vPadding * 2, infoBgImgView.height - 5 * 2)];

tipsTextView.editable = NO;
tipsTextView.selectable = YES;
tipsTextView.delegate = self;
tipsTextView.dataDetectorTypes = UIDataDetectorTypeLink;



NSMutableAttributedString *muAttributedStr = [[NSMutableAttributedString alloc] initWithString:@"点击链接范围是设定区域及其上方的一行对应的区域,左方的两个字,以及右边的空白区域。再加文字,点击区域会发生变化,请至点链接区域"];

//添加链接

NSURL * url = [NSURL URLWithString:@"http://www.baidu.com"];

// tipsTextView.selectedTextRange = NSMakeRange(muAttributedStr.length - 5, 5);

NSRange selectRange = NSMakeRange(muAttributedStr.length - 5, 5);
[muAttributedStr addAttribute:NSLinkAttributeName value:url range:selectRange];

// [tipsTextView addObserver:self forKeyPath:@"contentSize"options:NSKeyValueObservingOptionNew context:nil];

tipsTextView.attributedText = muAttributedStr;
[infoBgImgView addSubview:tipsTextView];

1个回答

devmiao
devmiao   Ds   Rxr 2016.02.03 22:31
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
Swift - 给UITextView添加自定义链接,以及链接的点击响应
我们知道多行文本框(UITextView)具有URL检测功能,将其开启后,它会高亮显示内容中的url链接文字,点击后会使用safari打开这个链接。          1,让textView支持自定义链接 除了能够用浏览器打开url链接外,有时我们还想让内容中的链接能实现一些个性化的功能需求。比如:点击“查看详细说明”后,APP会跳转到功能说明页面。而点击“问题反馈”链接
给UITextView增加链接
给UITextView增加了链接 现在在iOS添加你自己的Twitter账户更加简单了,现在你可以给一个NSAttributedString增加链接了,然后当它被点击的时候唤起一个定制的action。   首先,创建一个NSAttributedString然后增加给它增加一个NSLinkAttributeName 属性,见以下: NSMutableAttributedStrin
iOS UITextView增加链接 交互
//首先,创建一个NSAttributedString然后增加给它增加一个NSLinkAttributeName 属性,见以下: NSMutableAttributedString *attributedString = [[NSMutableAttributedString alloc] initWithString:@"This is an example by @marcelofabri_
iOS7 textView处理URL链接 以及点击 长按手势的处理
举例1 :文本超链接 @property (weak, nonatomic) IBOutlet UITextView *tv;     NSMutableAttributedString *attributedString = [[NSMutableAttributedString alloc] initWithString:@"This is an exampl
UITextView增加富文本AttributedString点击事件以及更改linkTextAttributes颜色
_tipTextView = [[UITextView alloc] init]; _tipTextView.delegate = self; _tipTextView.editable = NO; //必须禁止输入,否则点击将弹出输入键盘 _tipTextView.scrollEnabled = NO; _tipTextView.backgroundCo
【iOS开发】如何给字符串添加超连接(响应事件)
首先,我们在开发的过程中,会遇到这样的问题。比如:点击某一部分的文字跳转到另一界面。无论是登录协议,保险协议等等吧。 但是UITextView提供了添加超连接的方法,ios7.0之后使用。或许你可以使用UILabel属性字符串和UIButton来实现,当然是想的方法多种。我就不在介绍了^_^ 我来介绍一下UITextView的使用方法: /** * @author wumeng, 16-
UITextview 给给定的字符串添加link属性 指定字符串添加点击方法
- (void)viewDidLoad {     [super viewDidLoad];     //textview设置代理  非编辑状态下才可以连接url     self.textview.delegate = self;     self.textview.editable = NO;     [self testAttribute];
iOS 自定义view 是上面文字某区域有点击事件和点击背景效果
@interface HTXDyDetailCommentCell : UITableViewCell @property (nonatomic,strong) HJContentTextView * speciaView;   if (model.toMemberNick.length) {         //回复评论人的时候     
[Android]如何使得点击区域大于实际显示大小?
如何使得点击区域大于实际显示大小? 场景:这个图片或者文字太小了,用户很难点击,产品说,哇这样不行,一定要让用户好点击! 这个问题已经是早有解决方案,我只是把到收集的方法进行整理下。 [小招]对于图片,可以使用ImageButton来解决。 例: ImageButton android:id="@+id/iBtnTest" android:layout_widt
IOS的基本控件的使用-UITextView(单行文本输入区域)
ViewController.h //  UITextField // //  Created by mac on 2016/10/28. //  Copyright © 2016年 mac. All rights reserved. // #import @interface ViewController : UIViewCon