iOS中UITextView方法解读

iOS中UITextView方法解读

常用属性解读:

@property(nonatomic,assign) id<UITextViewDelegate> delegate;

设置代理属性

@property(nonatomic,copy) NSString *text;

textView上的文本

@property(nonatomic,retain) UIFont *font;

设置文本字体

@property(nonatomic,retain) UIColor *textColor;

设置文本颜色

@property(nonatomic) NSTextAlignment textAlignment;

设置文本对齐模式

@property(nonatomic) NSRange selectedRange;

设置选中的文本范围(只有当textView是第一响应时才有效)

@property(nonatomic,getter=isEditable) BOOL editable;

设置是否可以编辑

@property(nonatomic,getter=isSelectable) BOOL selectable;

设置是否可以选中

@property(nonatomic) UIDataDetectorTypes dataDetectorTypes;

这个属性可以将本文中的电话,邮件等变为链接,长按会调用响应响应的程序(textView必须为不可编辑状态),属性的枚举如下:

?


1

2

3

4

5

6

7

8


typedef 
NS_OPTIONS(NSUInteger, UIDataDetectorTypes) {

    
UIDataDetectorTypePhoneNumber   = 1 << 0,          
// 电话变为链接

    
UIDataDetectorTypeLink          = 1 << 1,          
// 网址变为链接   

    
UIDataDetectorTypeAddress       = 1 << 2,          
// 地址变为链接

    
UIDataDetectorTypeCalendarEvent = 1 << 3,          
// 日历变为链接

    
UIDataDetectorTypeNone          = 0,               
// 无连接

    
UIDataDetectorTypeAll           = NSUIntegerMax    
// 所有类型链接

};

@property(nonatomic) BOOL allowsEditingTextAttributes;

设置是否允许编辑属性字符串文本

@property(nonatomic,copy) NSAttributedString *attributedText;

设置属性字符串文本

@property(nonatomic,copy) NSDictionary *typingAttributes;

设置属性字符串文本属性字典

- (void)scrollRangeToVisible:(NSRange)range;

滚动textView使其显示在本一段文本

@property (readwrite, retain) UIView *inputView;

设置成为第一响应时弹出的视图,键盘视图

@property (readwrite, retain) UIView *inputAccessoryView;

设置成为第一响应时弹出的副视图,副键盘视图

@property(nonatomic) BOOL clearsOnInsertion;

设置是否显示删除按钮

UITextViewDelegate中的方法

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

是否开始编辑

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

是否结束编辑

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

开始编辑时触发的方法

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

结束编辑时触发的方法

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

是否允许字符改变

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

字符内容改变触发的方法

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

选中内容改变触发的方法

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

当文本中的URL进行链接时触发的方法

时间: 2025-01-01 12:05:09

iOS中UITextView方法解读的相关文章

数据库sqlite3的使用-ios中引用方法

一.简单说明 在iOS中使用SQLite3,首先要添加库文件libsqlite3.dylib和导入主头文件. 导入头文件,可以使用库中的函数(是纯C语言的) 二.具体说明 新建一个项目,在项目的主界面中放四个按钮(分别是,增加.删除.修改.查询). 1.sqlite3_open(<#const char *filename#>, <#sqlite3 **ppDb#>)函数的一些说明: (1)作用:把一个文件名称传递给他,它会自动检测这个文件是否存在,如果不存在的话,会自动创建相应的

IOS中init方法都做了什么事?

一.概述 在初始化使用init方法初始化时,会将以init开头的初始化方法,按顺序调用一遍.比如以下几个方法: 1 initWithFrame: 2 initWithNibName: 3 initWithStyle: PS:注意,在自定义Cell时,使用register注册一个Cell时,仅调用initWithStyle:方法.

iOS中 imageNamed方法 很多图片占用大量内存问题

当我们需要加载很多图片(相册)的时候我们一般会用[UIimage  imageNamed:imageName]; 实际上[UIimage  imageNamed:imageName]这个方法在图片使用完成之后不会被肢解释放掉,具体的释放时间是由系统决定的,这个方法治适用于图片小和一些常用的图像处理. 当我们做一个简单的图片浏览器的时候我们就不能用这个方法了,这里有一个简单的大概方法加载图片: for (int i = 0; i<100; i++) { NSString *imagename =

iOS中willMoveToSuperview:方法

直接看代码: #import "CMoveView.h" @interface CMoveView () //记录上一次父视图 @property (nonatomic, strong) UIView* oldSuperview; @end @implementation CMoveView //当自己重写一个UIView的时候有可能用到这个方法,当本视图的父类视图改变的时候,系统会自动的执行这个方法.newSuperview是本视图的新父类视图.newSuperview有可能是nil

iOS 中 UITextView 限制最大输入字数

显示UITextView最大输入字数的代码 1 -(BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text 2 { 3 //如果是删除减少字数,都返回允许修改 4 if ([text isEqualToString:@""]) { 5 return YES; 6 } 7 if (range.location>= MaxC

iOS中创建数组的简易方法与手势的使用

其实做外包也是挺不错,虽然累点,但是一天天的知识的扩展不少,下面是今天的收获 ①初始化数组一字典的方法 @[] 初始化不可变数组 @{} 初始化不可变字典 ②手势的使用 iOS中处理手势之前是用四个方法: - (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event - (void)touchesCancelled:(NSSet *)touches withEvent:(UIEvent *)event - (void)touch

iOS中数组遍历的方法及比较

数组遍历是编码中很常见的一种需求,我们来扒一拔iOS里面都有什么样的方法来实现,有什么特点. 因为iOS是兼容C语言的,所以C语言里面的最最常见的for循环遍历是没有问题的. 本文中用的数组是获取的系统的语言数组,大约有30多个数据,虽然还不够模拟大批量的数据,但对于方法的验证是没有问题的了. NSArray *langArray = [[NSUserDefaults standardUserDefaults] arrayForKey:@"AppleLanguages"]; 第一种方法

IOS中UIWebView的UXSS漏洞及修复方法

做IOS开发的同学经常用到UIWebView,大多时候是加载外部地址,但是有一些时候也会用来加载本地的html文件. UIWebView加载外部地址的时候遵循了"同源"策略,而加载本地网页的时候却绕够了"同源"策略,导致可以访问系统任意路径. 这就是UIWebView中存在的UXSS漏洞.已知尚未修复该漏洞的App有:微盘.文件全能王.QQ阅读. 漏洞复现方式大体相似,现在微盘为例: 在PC上编辑一个网页,命名为test.html. 内容如下: <script

IOS中获取各种文件的目录路径的方法

iphone沙箱模型的有四个文件夹,分别是什么,永久数据存储一般放在什么位置,得到模拟器的路径的简单方式是什么. documents,tmp,app,Library. (NSHomeDirectory()), 手动保存的文件在documents文件里 Nsuserdefaults保存的文件在tmp文件夹里 1.Documents 目录:您应该将所有de应用程序数据文件写入到这个目录下.这个目录用于存储用户数据或其它应该定期备份的信息. 2.AppName.app 目录:这是应用程序的程序包目录,