iOS:个性化UITextView(缩进,行距,铺满)

总体来说个性化定制UITextView中的内容有两种方法:

1,从文件中读取内容到UITextView,这个个人感觉使用rtfd和rtf格式文件效果非常好。

2,使用NSAttributeString进行定制

具体方法如下: 

  1. NSMutableParagraphStyle *paragraphStyle = [[NSMutableParagraphStyle alloc]init];  
  2.     paragraphStyle.lineHeightMultiple = 20.f;  
  3.     paragraphStyle.maximumLineHeight = 25.f;  
  4.     paragraphStyle.minimumLineHeight = 15.f;  
  5.     paragraphStyle.firstLineHeadIndent = 20.f;  
  6. paragraphStyle.alignment = NSTextAlignmentJustified;  
  7.   
  8. NSDictionary *attributes = @{ NSFontAttributeName:[UIFont systemFontOfSize:14], NSParagraphStyleAttributeName:paragraphStyle, NSForegroundColorAttributeName:[UIColor colorWithRed:76./255. green:75./255. blue:71./255. alpha:1]  
  9.                                  };  
  10.  textView.attributedText = [[NSAttributedString alloc]initWithString:content attributes:attributes];  

 

当然也可以初始化一个NSMutableAttributedString,然后向里面添加文字样式,最后将它赋给textView的AttributedText即可 

  1. NSMutableAttributedString *atr = [[NSMutableAttributedString alloc]initWithString:detail];  
  2.     [atr addAttribute:NSFontAttributeName value:[UIFont systemFontOfSize:14] range:NSMakeRange(0, detail.length)];  
  3.     textView.attributedText = atr;  

 

另外,对于textview中的链接样式,同样也可以定制 

  1. NSDictionary *linkAttributes = @{NSForegroundColorAttributeName: [UIColor blueColor],  
  2.                                      NSUnderlineColorAttributeName: [UIColor blackColor],  
  3.                                      NSUnderlineStyleAttributeName: @(NSUnderlinePatternDash)};  
  4. self.linkTextAttributes = linkAttributes;  

 

这里只是个简单的例子,具体还有很多属性可以自行参考头文件

posted @ 2014-03-20 11:14  苹果吧  阅读(16150)  评论(0编辑  收藏  举报