IT虾米网

UITextView的一些使用技巧详解

leader 2018年06月24日 手机开发 385 0

1.在指定位置插入字符串:

NSMutableString *TextViewStr=[[NSMutableString alloc] initWithString:TextView.text]; 
        [TextViewStr insertString:@"your strings" atIndex:TextView.selectedRange.location]; 
        TextView.scrollEnabled=NO; 
        TextView.text=theTvStr; 
         theTV.scrollEnabled=YES;

2.获得行数(包括换行符也会计算在内):

CGSize size = [[self.TextView text] sizeWithFont:[self.TextView font]]; 
    
   // 2. 取出文字的高度 
    int length = size.height; 
    
    //3. 计算行数 
    int colomNumber = TextView.contentSize.height/length;

3.检测换行符:

- (BOOL)textView: (UITextView *)textview shouldChangeTextInRange: (NSRange)range replacementText: (NSString *)text { 
    if ([text isEqualToString:@"\n"]) { 
        NSLog(@"it is a row !!"); 
        //... 
    } 
    return YES; 
}<pre name="code" class="objc"> self.textView = [[[UITextView  alloc] initWithFrame:self.view.frame] autorelease]; //初始化大小并自动释放 
  
 self.textView.textColor = [UIColor blackColor];//设置textview里面的字体颜色  
  
 self.textView.font = [UIFont fontWithName:@"Arial" size:18.0];//设置字体名字和字体大小  
  
 self.textView.delegate = self;//设置它的委托方法  
  
 self.textView.backgroundColor = [UIColor whiteColor];//设置它的背景颜色 
  
 self.textView.text = @"Now is the time for all good developers to come to serve their country.\n\nNow is the time for all good developers to come to serve their country.";//设置它显示的内容  
  
 self.textView.returnKeyType = UIReturnKeyDefault;//返回键的类型  
  
 self.textView.keyboardType = UIKeyboardTypeDefault;//键盘类型  
  
 self.textView.scrollEnabled = YES;//是否可以拖动  
  
 self.textView.autoresizingMask = UIViewAutoresizingFlexibleHeight;//自适应高度 
  
 [self.view addSubview: self.textView];//加入到整个页面中

 
 

注释:

文本字段实现了 UITextInputTrait协议,其提供了7个属性来定义字段处理文本输入的方式:autocapitalizationType、 autocorrectionType、enablesReturnKeyAutomatically、keyboardAppearance、 keyboardType、returnKeyType、secureTextEntry。其它,当文本字段为空时,placeholder文本以浅灰色显示,提供一个用户提示。通过设置clearButtonMode可以指定是否以及何时显示清除按钮。

如果你的textview里不用回车键,可以把回车键当做退出键盘的响应键。
#pragma mark - UITextView Delegate Methods  
 
-(BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text 
{  
	if ([text isEqualToString:@"\n"]) {  
 
	[textView resignFirstResponder];  
 
		return NO;  
	} 
 
	return YES;  
}
发布评论

分享到:

IT虾米网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!

iOS获取视图控制器实例的方法详解
你是第一个吃螃蟹的人
发表评论

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。