UILabel ,RTLabel,响应touch事件的方法

本文介绍了如何通过第三方库RTLabel实现具有下划线、变色、不同大小文本以及带有链接的Label,并展示了如何通过遵循特定协议来响应触摸事件。通过实现代理方法,您可以轻松地在Label上触发URL点击行为。

在项目中要用到带下划线的Label,本来想自己写一个相关的东西的,有点麻烦,就找一个第三方的拿来使用

RTLabel,提供很多Label上本身没有的东西,可以有一定的用武之地,感谢原作者。上图:

 

这是RTLabel支持的一些特性,下划线的Label,可变颜色和文字大小的Label, 带链接的Label等等这些特性。

进入正题,让Label响应Touch事件,如UIControlEventTouchDown。

仔细看了RTLabel的源码,RTLabel中包含了一个代理,

@protocol RTLabelDelegate <NSObject>

- (void)rtLabel:(id)rtLabel didSelectLinkWithURL:(NSURL*)url;

@end

首先遵循这个协议,在使用RTLabel的时候,设置好代理,然后实现该方法,即可让你的Label响应touch方法

代码如下:

使用RTLabel,指定代理
RTLabel *websiteRT = [[RTLabel alloc] initWithFrame:CGRectMake(70, 260, 180, 40)];
    websiteRT.text = @"网站  <a href='http://www.appvv.com'>www.appvv.com</a>";
    websiteRT.delegate = self;
    [self.view addSubview:websiteRT];

实现代理
- (void)rtLabel:(id)rtLabel didSelectLinkWithURL:(NSURL*)url
{
    NSLog(@"rtLabel is clicked,url is %@",url);
    [[UIApplication sharedApplication] openURL:url];
}

 

还有很多类似的方法可以实现,也没仔细看,但是这个方法很快捷。

 

转载于:https://www.cnblogs.com/easonoutlook/archive/2012/09/26/2704887.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值