Ios TTTAttributedLabel和链接的popover
是否可以检测链接文本的Ios TTTAttributedLabel和链接的popover,ios,ipad,label,uipopovercontroller,Ios,Ipad,Label,Uipopovercontroller,是否可以检测链接文本的CGRect或位置的CGPoint,以在TTTAttributedLabel中显示点击链接的弹出窗口(在ipad上)? 我需要用TTTAttributedLabel在单击的链接上显示弹出框 谢谢 你不想在手势级别通过跟踪位置来实现这一点。由于您有一个链接,只需覆盖openURL,并在拦截链接时执行任何您想要的操作。更多详细信息如下。您只能通过修改TTtatAttributedLabel来支持此行为 1) 修改委托方法: - (void)attributedLabel:(TT
CGRect
或位置的CGPoint
,以在TTTAttributedLabel
中显示点击链接的弹出窗口(在ipad上)?
我需要用TTTAttributedLabel
在单击的链接上显示弹出框
谢谢 你不想在手势级别通过跟踪位置来实现这一点。由于您有一个链接,只需覆盖
openURL
,并在拦截链接时执行任何您想要的操作。更多详细信息如下。您只能通过修改TTtatAttributedLabel来支持此行为
1) 修改委托方法:
- (void)attributedLabel:(TTTAttributedLabel *)label
didSelectLinkWithURL:(NSURL *)url
atPoint:(CGPoint)point;
2) 在tttatAttributedLabel.m
源中,修改touchSedend:withEvent:
并抓住触摸点并将其传递给代理方法
switch (result.resultType) {
case NSTextCheckingTypeLink:
if ([self.delegate respondsToSelector:@selector(attributedLabel:didSelectLinkWithURL:atPoint:)]) {
UITouch *touch = [touches anyObject];
CGPoint touchPoint = [touch locationInView:self];
[self.delegate attributedLabel:self didSelectLinkWithURL:result.URL atPoint:touchPoint];
return;
3) 在视图控制器中,需要将该接触点转换为视图控制器视图的相对坐标:
#pragma mark TTTAttributedLabelDelegate
- (void)attributedLabel:(TTTAttributedLabel *)label
didSelectLinkWithURL:(NSURL *)url
atPoint:(CGPoint)point
{
CGPoint normalizedPoint = [self convertPoint:point fromView:label];
UIActionSheet *actionSheet = [[UIActionSheet alloc] ...
[actionSheet showFromRect:CGRectMake(normalizedPoint.x, normalizedPoint.y-kSensibleOffset, 10, 10)
inView:label
animated:YES];
}
#pragma mark -
我不认为有任何方法可以用TTtatAttributedLabel做到这一点。如果你只需要知道链接在哪里,你可以注册用户接触的地方。然而,这不会给你任何特定的链接点,如中心或开始。是的,我将CG的触摸点传输到我的控制器,在我显示popover之后。但我希望搜索链接中点。另一个问题是如何处理行分隔链接。。无论如何,任何帮助都是欢迎的。我需要显示链接点击弹出窗口(带箭头)。你们明白这个问题吗?是的,我明白。我想说的是,不要试图跟踪触摸,只要让链接通知你,然后你就可以启动popover。我必须从哪里启动popover?任何带有“通知”的CGRect?对不起,我不明白你的意思。