UITextView学习笔记
===================================
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);
}
UITextView学习笔记的更多相关文章
- IOS学习笔记(四)之UITextField和UITextView控件学习
IOS学习笔记(四)之UITextField和UITextView控件学习(博客地址:http://blog.csdn.net/developer_jiangqq) Author:hmjiangqq ...
- js学习笔记:webpack基础入门(一)
之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...
- PHP-自定义模板-学习笔记
1. 开始 这几天,看了李炎恢老师的<PHP第二季度视频>中的“章节7:创建TPL自定义模板”,做一个学习笔记,通过绘制架构图.UML类图和思维导图,来对加深理解. 2. 整体架构图 ...
- PHP-会员登录与注册例子解析-学习笔记
1.开始 最近开始学习李炎恢老师的<PHP第二季度视频>中的“章节5:使用OOP注册会员”,做一个学习笔记,通过绘制基本页面流程和UML类图,来对加深理解. 2.基本页面流程 3.通过UM ...
- 2014年暑假c#学习笔记目录
2014年暑假c#学习笔记 一.C#编程基础 1. c#编程基础之枚举 2. c#编程基础之函数可变参数 3. c#编程基础之字符串基础 4. c#编程基础之字符串函数 5.c#编程基础之ref.ou ...
- JAVA GUI编程学习笔记目录
2014年暑假JAVA GUI编程学习笔记目录 1.JAVA之GUI编程概述 2.JAVA之GUI编程布局 3.JAVA之GUI编程Frame窗口 4.JAVA之GUI编程事件监听机制 5.JAVA之 ...
- seaJs学习笔记2 – seaJs组建库的使用
原文地址:seaJs学习笔记2 – seaJs组建库的使用 我觉得学习新东西并不是会使用它就够了的,会使用仅仅代表你看懂了,理解了,二不代表你深入了,彻悟了它的精髓. 所以不断的学习将是源源不断. 最 ...
- CSS学习笔记
CSS学习笔记 2016年12月15日整理 CSS基础 Chapter1 在console输入escape("宋体") ENTER 就会出现unicode编码 显示"%u ...
- HTML学习笔记
HTML学习笔记 2016年12月15日整理 Chapter1 URL(scheme://host.domain:port/path/filename) scheme: 定义因特网服务的类型,常见的为 ...
随机推荐
- Spring Cloud Stream教程(五)编程模型
本节介绍Spring Cloud Stream的编程模型.Spring Cloud Stream提供了许多预定义的注释,用于声明绑定的输入和输出通道,以及如何收听频道. 声明和绑定频道 触发绑定@En ...
- Oracle-SQL程序优化4
从事一年DBA工作,经验尚浅,但是遇到问题总还是能够解决,今天就谈下我遇到的一个比较奇葩的问题. 运维人员告知我下午过后ETL一直卡住没有继续,那时我以为又是什么兼容性问题引起的,就重跑一下ETL,谁 ...
- Apache Drill 调研学习
Apache Drill 调研学习 ## 一.Drill概述 在大数据时代,对于Hadoop中的信息,越来越多的用户需要能够获得快速且互动的分析方法.大数据面临的一个很大的问题是大多数分析查询都很缓慢 ...
- 微信小程序 API 路由
路由:由于页面的跳转: wx.switchTab() 跳转到 tabBar 页面,并关闭掉其他所有非 tabBar 页面: 参数:为对象, 对象的属性: url:需要跳转的 tabBar 的页面路径( ...
- 506C Mr. Kitayuta vs. Bamboos
分析 代码 #include<bits/stdc++.h> using namespace std; #define int long long ],h[],now[],cnt[]; in ...
- 从输入url到页面展现的过程
先看一幅图:(下面的所有图我都进行拉伸压缩了 如果看不到 可以右键复制图片地址 然后到浏览器粘贴查看 不然显示不全图片) mac没有画图软件 不好意思 xmind做的 1. 输入网址 当 ...
- C# WinForm 添加Windows Media Player 控件调试出现未能加载文件或程序集Interop.WMPLib,该怎么解决
C# WinForm 添加Windows Media Player 控件调试出现未能加载文件或程序集Interop.WMPLib如标题,在窗体中添加Windows Media Player 控件,当调 ...
- Flink整体执行流程
以Flink源码中自带的WordCount为例,执行的入口从用户程序的execute()函数入手,execute()的源码如下: public JobExecutionResult execute(S ...
- $apply()和$digest()——angular
$apply()和$digest()在AngularJS中是两个核心概念,但是有时候它们又让人困惑.而为了了解AngularJS的工作方式,首先需要了解$apply()和$digest()是如何工作的 ...
- 梳理检测论文-Refinement Neural Network
Single-Shot Refinement Neural Network for Object Detection 目录 1. motivation 2. RefineDet 解析(Network ...