UILabel ,RTLabel,響應touch事件的方法


在項目中要用到帶下划線的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];
}

 

還有很多類似的方法可以實現,也沒仔細看,但是這個方法很快捷。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2026 CODEPRJ.COM