加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ios – 在UITextView中选择特定文本以激活segue

发布时间:2020-12-14 17:32:57 所属栏目:百科 来源:网络整理
导读:我正在尝试向我的应用程序添加一个功能,用户可以在其中选择一个PRESPECIFIED文本,以便触发segue并获得有关用户所选内容的说明/信息. 以下文字是一个例子: 夏威夷是50个“美国国家”中最近的一个,并于1959年8月21日加入了联盟. 用户可以选择“美国州”并获取
我正在尝试向我的应用程序添加一个功能,用户可以在其中选择一个PRESPECIFIED文本,以便触发segue并获得有关用户所选内容的说明/信息.

以下文字是一个例子:

夏威夷是50个“美国国家”中最近的一个,并于1959年8月21日加入了联盟.

用户可以选择“美国州”并获取有关美国州的信息.

那么我可以用Xcode做到这一点还是我必须使用一些html编辑应用程序?如果是这样,哪里会是一个好地方(在线或书籍)开始学习如何做这样的事情?

谢谢.

解决方法

可能有更好的方法,但我知道一种方法来做你所要求的.

>使用要显示的文本创建NSMutableAttributedString
>确定要单击的字符范围,并使用setAttributes:rangeSet,添加NSLinkAttributeName属性,其值可用于标识单击的区域.
>创建一个UITextView并将attributedString属性设置为上面的字符串
>将一些对象设置为UITextView的委托
>覆盖textView:shouldInteractWithURL:inRange:方法.在这里返回NO,但是使用您之前使用的字符串创建的URL执行您想要的操作.

这是代码部分.我将把UITextView创建留给你.

-(void)viewDidLoad
{
    [super viewDidLoad];

    NSMutableAttributedString *attString = self.textView.attributedText.mutableCopy;
    [attString setAttributes:@{NSLinkAttributeName:@"123"} range:NSMakeRange(0,10)];
    self.textView.attributedText = attString;
    self.textView.delegate = self;
}

- (BOOL)textView:(UITextView *)textView shouldInteractWithURL:(NSURL *)URL inRange:(NSRange)characterRange
{
    NSLog(@"%@",URL);
    return NO;
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读