博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
UITextView学习笔记
阅读量:5360 次
发布时间:2019-06-15

本文共 2322 字,大约阅读时间需要 7 分钟。

===================================

UITextView              

===================================

1.UITextView常用属性

- (void)viewDidLoad {

    [super viewDidLoad];

    //天生就会滚动,就是UIScrollView的子类

    //ViewController试图控制器一旦检测到自己是在NavigationController中,就会把可以滚动的视图留出一个导航栏高度的位置,因为会滚动的视图通常被设计为全屏使用。反之如果没被装在NavigationController中系统不会给你留白。

    //解决方案:

    self.automaticallyAdjustsScrollViewInsets = NO;

  

    UITextView * tv = [[UITextView alloc]initWithFrame:CGRectMake(10, 100, 300, 100)];

    tv.backgroundColor = [UIColor orangeColor];

    //设置字体

    tv.font = [UIFont systemFontOfSize:30];

    //设置字体颜色

    tv.textColor = [UIColor blueColor];

    //设置文字对齐方式

    tv.textAlignment = NSTextAlignmentLeft;

    //设置是否滚动

    tv.scrollEnabled = YES;

    //设置键盘色彩

    tv.keyboardAppearance = UIKeyboardAppearanceAlert;

    //设置键盘样式

    tv.keyboardType = UIKeyboardTypeDefault;

    //设置return按键的样式

    tv.returnKeyType = UIReturnKeyDone;

    //设置是否自动大小写

    tv.autocapitalizationType = UITextAutocapitalizationTypeNone;

    //设置是否自动纠错

    tv.autocorrectionType = UITextAutocorrectionTypeNo;

    //设置自定义键盘

    UIView * keyView = [[UIView alloc]initWithFrame:CGRectMake(0, 0, 0, 300)];

    keyView.backgroundColor = [UIColor greenColor];

    //tv.inputView = keyView;

    //设置二级键盘

    tv.inputAccessoryView = nil; 

    //设置禁止编辑

    tv.editable = YES;

    //设置文本内容

    tv.text = @"真是全都忘了";

    //设置不能进行交互

    tv.userInteractionEnabled = YES;

    //控制器没有tag,只有UIView子类有

    tv.tag = 100;

    //设置代理

    tv.delegate = self;

    [self.view addSubview:tv];

    self.view.backgroundColor = [UIColor whiteColor];

}

 

2.UITextView常用代理方法

#pragma mark - 实现代理

-(BOOL)textViewShouldBeginEditing:(UITextView *)textView

{

    NSLog(@"将要开始编辑,返回YES允许编辑,NO不允许");

    return YES;

 

}

 

-(BOOL)textViewShouldEndEditing:(UITextView *)textView

{

    NSLog(@"将要结束编辑,返回YES允许,NO不允许");

    return YES;

}

 

-(void)textViewDidBeginEditing:(UITextView *)textView

{   //焦点不在tv身上

    NSLog(@"已经开始编辑");

}

 

-(void)textViewDidEndEditing:(UITextView *)textView

{

    NSLog(@"已经结束编辑");

}

 

-(BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text

{

    NSLog(@"当文本内容将要发生改变,参考UITextField");

    return YES;

}

 

-(void)textViewDidChange:(UITextView *)textView

{

    NSLog(@"当文本内容已经改变");

}

 

-(void)textViewDidChangeSelection:(UITextView *)textView

{

    NSLog(@"选中的内容发生改变");

    //获取选中文本的范围

    NSRange range = textView.selectedRange;

    //把选中文本得到

    NSString * str = [textView.text substringWithRange:range];

    

    NSLog(@"您选中了%@",str);

}

转载于:https://www.cnblogs.com/W-Kr/p/5100517.html

你可能感兴趣的文章
Spring常用注解
查看>>
latch release ......
查看>>
String 字符串详解 / 常用API
查看>>
懒加载树[tree]、点击已经加载完成的树[tree]节点,再次加载该节点下一级的所有子节点...
查看>>
[LeetCode]Unique Binary Search Trees
查看>>
CURL
查看>>
让python输出不自行换行的方法
查看>>
用servlet进行用户名和密码校验
查看>>
scala中伴生对象和伴生类
查看>>
linux连接远程桌面
查看>>
Baidu set to lose leading role in digital advertising _china daily
查看>>
第十七章 Velocity优化实践(待续)
查看>>
iOS xcode6 添加.pch文件
查看>>
周四新生训练 Bad random numbers
查看>>
数组去重
查看>>
解决MyEclipse中install new software问题
查看>>
win7 dos命令窗口内容显示不全解决办法--将命令执行结果输出到一个文件中
查看>>
Java多线程-线程安全
查看>>
springboot11-01-security入门
查看>>
模拟信号和数字信号
查看>>