關於UILabel和UIButton有的時候須要添加下劃線,通常有兩種方式經過默認的NSMutableAttributedString設置,第二種就是在drawRect中畫一條下劃線,本文就簡單的選擇第一種,第二種有興趣的能夠本身研究一下。app
UILabel設置下劃線:spa
UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(10, 100, 310, 50)]; label.backgroundColor = [UIColor redColor]; [label setLineBreakMode:NSLineBreakByWordWrapping]; label.numberOfLines =3; [label setFont:[UIFont systemFontOfSize:14]]; NSMutableAttributedString *content = [[NSMutableAttributedString alloc]initWithString:[NSString stringWithFormat:@"博文地址:http://www.cnblogs.com/xiaofeixiang 博客園-FlyElephant QQ羣:228407086"]]; NSRange contentRange = {0,[content length]}; [content addAttribute:NSUnderlineStyleAttributeName value:[NSNumber numberWithInteger:NSUnderlineStyleSingle] range:contentRange]; label.attributedText = content; [self.view addSubview:label];
UIButton設置下劃線:orm
UIButton *button=[[UIButton alloc]initWithFrame:CGRectMake(10, 200, 80, 30)]; NSMutableAttributedString *title = [[NSMutableAttributedString alloc] initWithString:@"FlyElephant"]; NSRange titleRange = {0,[title length]}; [title addAttribute:NSUnderlineStyleAttributeName value:[NSNumber numberWithInteger:NSUnderlineStyleSingle] range:titleRange]; [button setAttributedTitle:title forState:UIControlStateNormal]; [button setBackgroundColor:[UIColor redColor]]; [button.titleLabel setFont:[UIFont systemFontOfSize:14]]; [self.view addSubview:button];
最終效果以下:blog