概述

  • UITextView可滚动的多行文本区域
  • UITextView支持使用自定义样式信息显示文本,并支持文本编辑。您通常使用文本视图来显示多行文本,例如在显示大型文本文档的正文时。
  • UITextView继承于UIScrollView

属性和方法

初始化方法

UITextView *textView = [[UITextView alloc] initWithFrame:CGRectMake(50, 50, [UIScreen mainScreen].bounds.size.width - 100, 300)];

设置文本内容

textView.text = @"测试数据";

attributedText属性文本,这里不多做介绍,具体请点此查看

设置文本的字体

textView.font = [UIFont systemFontOfSize:20];

设置文本的颜色

textView.textColor = [UIColor redColor];

设置是否可以编辑,默认是YES

[textView setEditable:NO];

设置文本的对齐方式

textView.textAlignment = NSTextAlignmentRight;

使用dataDetectorTypes实现超链接,需要将可编辑状态设置为NO(更多枚举类型到补充说明中查看)

textView.text = @"http://baidu.com";
[textView setEditable:NO];
textView.dataDetectorTypes = UIDataDetectorTypeLink;

UITextView代理方法

即将开始编辑

- (BOOL)textViewShouldBeginEditing:(UITextView *)textView;

已经开始编辑

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

编辑即将结束

- (BOOL)textViewShouldEndEditing:(UITextView *)textView;

编辑已经结束

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

文本视图在用户输入新字符或删除现有字符时调用此方法

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

输入的内容已经变化时调用此方法

- (void)textViewDidChange:(UITextView *)textView;

文本视图的选择已更改,就会调用此方法

- (void)textViewDidChangeSelection:(UITextView *)textView;

如果用户点击或长按文本附件,而其image属性不是,则文本视图将调用此方法nil。您可以使用此方法触发一个操作,除了显示与文本内联的文本附件外。

- (BOOL)textView:(UITextView *)textView shouldInteractWithTextAttachment:(NSTextAttachment *)textAttachment inRange:(NSRange)characterRange interaction:(UITextItemInteraction)interaction;

该方法仅在与URL链接的第一次交互时被调用。例如,当用户希望首次与URL进行交互以显示可以采取的操作列表时,将调用此方法; 如果用户从列表中选择一个打开的动作,则不调用此方法,因为“open”表示与同一个URL的第二个交互。

- (BOOL)textView:(UITextView *)textView shouldInteractWithURL:(NSURL *)URL inRange:(NSRange)characterRange interaction:(UITextItemInteraction)interaction;

文本视图中的链接只有在文本视图可选但不可编辑的情况下才是交互式的。也就是说,如果该值属性是与属性。UITextViewselectableYESeditableNO

补充说明

UITextView相关通知

UITextView相关通知名称 说明
UITextViewTextDidBeginEditingNotification TextView开始编辑时发出的通知
UITextViewTextDidChangeNotification TextView的内容开始改变时发出的通知
UITextViewTextDidEndEditing TextView结束编辑时发出的通知

UITextViewdataDetectorTypes属性对应的枚举以及说明

类型 说明
UIDataDetectorTypePhoneNumber 检测格式化为电话号码的字符串。
UIDataDetectorTypeLink 检测格式为URL的字符串。
UIDataDetectorTypeAddress 检测格式为地址的字符串。
UIDataDetectorTypeCalendarEvent 检测格式化为日历事件的字符串。
UIDataDetectorTypeShipmentTrackingNumber 检测格式化为包裹递送公司的跟踪号码的字符串。
UIDataDetectorTypeFlightNumber 检测格式化为航空公司航班号的字符串。
UIDataDetectorTypeLookupSuggestion 检测格式化为用户可能要查找的信息的字符串。
UIDataDetectorTypeNone 不支持超链接
UIDataDetectorTypeAll 接收所有类型的字符串

作者:coder小鹏

最新文章

  1. div自适应布局
  2. ChartControl 折线图 柱状图
  3. mac上一键配置和安装adb驱动或者环境
  4. array DEMO
  5. mysql 无法远程访问(授权也没办法,确切的说是因为只绑定了127IP)
  6. Django Form的学习
  7. Wifi热点工具-青青草原WiFi
  8. 20分钟入门Redux
  9. OSX安装nginx和rtmp模块(rtmp直播服务器搭建)
  10. 跨平台编程中的宏定义(__LINE__和__DATE__极其有用)
  11. 编译 ORB_SLAM2 (一)
  12. 201521123076 《Java程序设计》 第十四周学习总结
  13. 变量的声明和定义以及extern的用法
  14. 【工具篇】.NET开发常用工具
  15. [smartMenu.js] 一个基于jquery的实用的右键拓展菜单栏插件
  16. 使用Mediaplay类写一个播放器
  17. python基础知识11---函数1
  18. 正在执行的sql
  19. java-solr solrj的使用
  20. linux command wc

热门文章

  1. 浏览器从输入到输出的过程与原理三之DNS
  2. React—Native开发之原生模块向JavaScript发送事件
  3. WPF tooltip 根据父元素属性决定是否显示
  4. 矩阵分解---QR正交分解,LU分解
  5. 前端 css+js实现返回顶部功能
  6. 游戏攻略 Re:LieF ~親愛なるあなたへ~ (relief给挚爱的你)
  7. LeetCode题解之Peak Index in a MountainArray
  8. [C/C++]如何解读返回函数指针的函数声明
  9. Linux 挂载
  10. 用TableView写带特效的cell