iOS应用开发中的文字选中操作控件UITextView用法讲解

2020-01-14 19:44:53王旭
复制代码
[label  setNumberOfLines:0];      
[label  setFrame:CGRectMake(40, 135, 240, size.height+10)];      
[label setText:desc];     
(6)UITextView自定选择文字后的菜单
在ViewDidLoad中加入:
复制代码
UIMenuItem *menuItem = [[UIMenuItem alloc]initWithTitle:@"分享到新浪微博" action:@selector(changeColor:)];    
UIMenuController *menu = [UIMenuController sharedMenuController];    
[menu setMenuItems:[NSArray arrayWithObject:menuItem]];    
[menuItem release];    
当然上面那个@selector里面的changeColor方法还是自己写吧,也就是说点击了我们自定义的菜单项后会触发的方法。
然后还得在代码里加上一个方法:
复制代码
-(BOOL)canPerformAction:(SEL)action withSender:(id)sender    
{    
if(action ==@selector(changeColor:))    
{    
if(textView.selectedRange.length>0)    
return YES;    
}    
return NO;    
}   
实现后如下图:

 

iOS应用开发中的文字选中操作控件UITextView用法讲解

 

3.一些个性化定制
总体来说个性化定制UITextView中的内容有两种方法:
(1)从文件中读取内容到UITextView,这个个人感觉使用rtfd和rtf格式文件效果非常好。

(2)使用NSAttributeString进行定制

具体方法如下: 

复制代码
NSMutableParagraphStyle *paragraphStyle = [[NSMutableParagraphStyle alloc]init];  
    paragraphStyle.lineHeightMultiple = 20.f;  
    paragraphStyle.maximumLineHeight = 25.f;  
    paragraphStyle.minimumLineHeight = 15.f;  
    paragraphStyle.firstLineHeadIndent = 20.f;  
paragraphStyle.alignment = NSTextAlignmentJustified;