我在textView中检测到网址有奇怪的问题。我的代码是这样的:
_contactDescription.dataDetectorTypes = UIDataDetectorTypeLink | UIDataDetectorTypePhoneNumber;
[_contactDescription setUserInteractionEnabled:YES];
[_contactDescription setSelectable:YES];
[_contactDescription setEditable:NO];
_contactDescription.delegate = self;
_contactDescription.text = desc;
我的字符串有很多电话号码和电子邮件要检测,但只使用数据检测,只有第一个电话和第一个电子邮件运行操作。所有手机和电子邮件都会突出显示,但不会点击任何操作。
有没有人有类似的问题? 提前谢谢。
答案 0 :(得分:0)
如果它们被突出显示但您无法点击它们,但您可以点击第一个,这通常意味着您还没有想到的另一个视图,而不是翻阅文本。您可以尝试在视图控制器中添加它,以查看要点击的内容。
-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
for (UITouch * touch in [touches allObjects])
{
NSLog(@"View: %@", touch.view);
}
}
或者在模拟器中运行它,在Debug中打开Color Blended Layers
或尝试隐藏所有其他视图,直到找到罪犯为止。
另一个问题可能是文本实际上在视图之外,你不能说,因为它不会削减额外的。验证情况并非如此。
[_contactDescription setClipsToBounds:YES];
希望就是这种情况,其中一个帮助找到罪犯。祝你好运。