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

前端之家收集整理的这篇文章主要介绍了ios – 在UITextView中选择特定文本以激活segue前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试向我的应用程序添加一个功能,用户可以在其中选择一个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;
}

猜你在找的Xcode相关文章