• UITextView控件的用法详解


    1.创建并初始化
    创建UITextView的文件,并在.h文件中写入如下代码:

    1 #import <UIKit/UIKit.h>
    2
    3 @interface TextViewController : UIViewController <UITextViewDelegate>{
    4 UITextView *textView;
    5 }
    6
    7 @property (nonatomic, retain) UITextView *textView;
    8
    9 @end

    复制代码

    在.m文件中初始化这个textview,写入代码如下:

     1 self.textView = [[[UITextView  alloc] initWithFrame:self.view.frame] autorelease]; //初始化大小并自动释放
    2
    3 self.textView.textColor = [UIColor blackColor];//设置textview里面的字体颜色
    4
    5 self.textView.font = [UIFont fontWithName:@"Arial" size:18.0];//设置字体名字和字体大小
    6
    7 self.textView.delegate = self;//设置它的委托方法
    8
    9 self.textView.backgroundColor = [UIColor whiteColor];//设置它的背景颜色
    10
    11 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.";//设置它显示的内容
    12
    13 self.textView.returnKeyType = UIReturnKeyDefault;//返回键的类型
    14
    15 self.textView.keyboardType = UIKeyboardTypeDefault;//键盘类型
    16
    17 self.textView.scrollEnabled = YES;//是否可以拖动
    18
    19 self.textView.autoresizingMask = UIViewAutoresizingFlexibleHeight;//自适应高度
    20
    21 [self.view addSubview: self.textView];//加入到整个页面中

    复制代码

    文本字段实现了UITextInputTrait协议,其提供了7个属性来定义字段处理文本输入的方式:autocapitalizationType、autocorrectionType、enablesReturnKeyAutomatically、keyboardAppearance、keyboardType、returnKeyType、secureTextEntry。

    其它,当文本字段为空时,placeholder文本以浅灰色显示,提供一个用户提示。通过设置clearButtonMode可以指定是否以及何时显示清除按钮。
    2. UITextView退出键盘的几种方式

    (1)如果你程序是有导航条的,可以在导航条上面加多一个Done的按钮,用来退出键盘,当然要先实现UITextViewDelegate。

    - (void)textViewDidBeginEditing:(UITextView *)textView {    

    UIBarButtonItem *done = [[[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemDone target:self action:@selector(leaveEditMode)] autorelease];

    self.navigationItem.rightBarButtonItem = done;

    }

    - (void)textViewDidEndEditing:(UITextView *)textView {

    self.navigationItem.rightBarButtonItem = nil;

    }

    - (void)leaveEditMode {

    [self.textView resignFirstResponder];

    }

    复制代码

    (2)如果你的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;

    }

    复制代码

    (3)还有你也可以自定义其他视图控件加载到键盘上用来退出,比如在弹出的键盘上面加一个view来放置退出键盘的Done按钮。

     1 UIToolbar * topView = [[UIToolbar alloc]initWithFrame:CGRectMake(0, 0, 320, 30)];  
    2
    3 [topView setBarStyle:UIBarStyleBlack];
    4
    5 UIBarButtonItem * helloButton = [[UIBarButtonItem alloc]initWithTitle:@"Hello" style:UIBarButtonItemStyleBordered target:self action:nil];
    6
    7 UIBarButtonItem * btnSpace = [[UIBarButtonItem alloc]initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:self action:nil];
    8
    9
    10
    11 UIBarButtonItem * doneButton = [[UIBarButtonItem alloc]initWithTitle:@"Done" style:UIBarButtonItemStyleDone target:self action:@selector(dismissKeyBoard)];
    12
    13 NSArray * buttonsArray = [NSArray arrayWithObjects:helloButton,btnSpace,doneButton,nil];
    14
    15 [doneButton release];
    16
    17 [btnSpace release];
    18
    19 [helloButton release];
    20
    21 [topView setItems:buttonsArray];
    22
    23 [tvTextView setInputAccessoryView:topView];
    24
    25 -(IBAction)dismissKeyBoard
    26
    27 {
    28
    29 [tvTextView resignFirstResponder];
    30
    31 }

    复制代码

  • 相关阅读:
    VysorPro助手
    Play 2D games on Pixel running Android Nougat (N7.1.2) with Daydream View VR headset
    Play 2D games on Nexus 6P running Android N7.1.1 with Daydream View VR headset
    Native SBS for Android
    ADB和Fastboot最新版的谷歌官方下载链接
    How do I install Daydream on my phone?
    Daydream Controller手柄数据的解析
    蓝牙BLE传输性能及延迟分析
    VR(虚拟现实)开发资源汇总
    Android(Java)控制GPIO的方法及耗时分析
  • 原文地址:https://www.cnblogs.com/rywx/p/2564829.html
Copyright © 2020-2023  润新知