1. #import "ViewController.h"
  2.  
  3. @interface ViewController ()<UITextViewDelegate>
  4.  
  5. @property (strong, nonatomic) UITextView *textView;
  6.  
  7. @end
  8.  
  9. @implementation ViewController
  10.  
  11. @synthesize textView;
  12.  
  13. - (void)viewDidLoad {
  14. [super viewDidLoad];
  15. //创建视图
  16. UIView *bgView = [[UIView alloc] initWithFrame:self.view.frame];
  17. bgView.backgroundColor = [UIColor lightGrayColor];
  18. [self.view addSubview:bgView];
  19. //创建点击手势
  20. UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(closeKeyBoard)];
  21. [bgView addGestureRecognizer:tap];
  22.  
  23. //初始化大小
  24. self.textView = [[UITextView alloc] initWithFrame:CGRectMake(, , self.view.frame.size.width-, )];
  25. //字体颜色
  26. self.textView.textColor = [UIColor blackColor];
  27. //字体名称和大小
  28. self.textView.font = [UIFont fontWithName:@"Arial" size:18.0];
  29. //设置委托方法
  30. self.textView.delegate = self;
  31. //背景颜色
  32. self.textView.backgroundColor = [UIColor whiteColor];
  33. //内容
  34. //self.textView.text = @"qwertyuyiopasdfghjklzxcvbnm";
  35. //返回键类型
  36. self.textView.returnKeyType = UIReturnKeyDefault;
  37. //键盘类型
  38. self.textView.keyboardType = UIKeyboardTypeNamePhonePad;
  39. //是否可以拖动
  40. self.textView.scrollEnabled = YES;
  41. //禁止编辑
  42. self.textView.editable = YES;
  43. //自适应高度
  44. self.textView.autoresizingMask = UIViewAutoresizingFlexibleHeight;
  45. //加到整个页面中
  46. [self.view addSubview:self.textView];
  47. }
  48.  
  49. - (void)closeKeyBoard
  50. {
  51. [self.textView resignFirstResponder];
  52. }
  53. - (void)textViewDidBeginEditing:(UITextView *)textView
  54. {
  55. [UIView beginAnimations:@"test" context:nil];
  56. [UIView setAnimationDuration:0.3];
  57.  
  58. CGRect rect = self.textView.frame;
  59. rect.origin.y = rect.origin.y - ;
  60. self.textView.frame = rect;
  61. [UIView commitAnimations];
  62. }
  63.  
  64. - (void)textViewDidEndEditing:(UITextView *)textView
  65. {
  66. [UIView beginAnimations:@"test" context:nil];
  67. [UIView setAnimationDuration:0.3];
  68.  
  69. CGRect rect = self.textView.frame;
  70. rect.origin.y = rect.origin.y + ;
  71. self.textView.frame = rect;
  72. [UIView commitAnimations];
  73. }
  74.  
  75. - (void)didReceiveMemoryWarning {
  76. [super didReceiveMemoryWarning];
  77. // Dispose of any resources that can be recreated.
  78. }
  79.  
  80. @end

iOS UI-文本视图(UITextView)的更多相关文章

  1. IOS 学习笔记(5) 控件 文本视图(UITextView)的使用方法

    相对于UILabell所支持的较短文本内容,UITextView对于长文本的支持更好.UITextView能够以滚动的方式全部浏览到长文本,并且就像UILabel那样,从ISO6,他也提供了对NSAt ...

  2. iOS:文本视图控件UITextView的详细使用

    文本视图控件:UITextView 介绍:它是一个文本域的编辑视图,可以在该区域上进行编辑(包括删除.剪贴.复制.修改等),它与文本框UITextField的不同之处是:当它里面的每一行内容超出时,可 ...

  3. iOS 解决文本(uitextfield/uitextView)在中间显示而不在顶部显示 问题

    在对应的控制器中设置下面属性 self.automaticallyAdjustsScrollViewInsets = NO; 这样就好了.

  4. IOS UI 滚动视图 UIScrollView

    UIScrollView 常用属性 scrollView.maximumZoomScale= 2.0; //  缩放最大比例 scrollView.minimumZoomScale = 0.2;// ...

  5. iOS中 UITextView文本视图 技术分享

    UITextView: 文本视图相比与UITextField直观的区别就是UITextView可以输入多行文字并且可以滚动显示浏览全文. UITextField的用处多,UITextView的用法也不 ...

  6. iOS 9应用开发教程之多行读写文本ios9文本视图

    iOS 9应用开发教程之多行读写文本ios9文本视图 多行读写文本——ios9文本视图 文本视图也是输入控件,与文本框不同的是,文本视图可以让用户输入多行,如图2.23所示.在此图中字符串“说点什么吧 ...

  7. UITextView(文本视图) 学习之初体验

    UITextView文本视图相比与UITextField直观的区别就是UITextView可以输入多行文字并且可以滚动显示浏览全文.常见UITextView使用在APP的软件简介.内容详情显示.小说阅 ...

  8. iOS富文本(二)初识Text Kit

    概述 Text Kit 是建立在Core Text上的文本布局系统,虽然没有Core Text那么强大的文本处理功能,但是对于大多数常见的文本布局用Text Kit能够很简单的实现,而不是用Core ...

  9. iOS开发中视图控制器ViewControllers之间的数据传递

    iOS开发中视图控制器ViewControllers之间的数据传递 这里我们用一个demo来说明ios是如何在视图控制器之间传递重要的参数的.本文先从手写UI来讨论,在下一篇文章中讨论在storybo ...

  10. iOS10 UI教程视图的生命周期

    iOS10 UI教程视图的生命周期 说到视图的生命周期一般都是指视图控制器的视图生命周期.在视图的声明周期中最主要的有8个方法,分别为loadView().viewDidLoad().viewWill ...

随机推荐

  1. CSS实现三角形、梯形、平行四边形、圆形、椭圆形、对话框、自适应正方形

    本文篇幅较长,希望能坚持看完,转载请注明出处,如果觉得好文请给个赞吧 CSS实现梯形 CSS实现三角形和梯形主要是依靠border是梯形的特性来做的,有点像相框的那种感觉. 首先我们先给一个正方形设置 ...

  2. Python3基础 函数 无参数无返回值 调用会输出hello world的函数

             Python : 3.7.0          OS : Ubuntu 18.04.1 LTS         IDE : PyCharm 2018.2.4       Conda ...

  3. Django组件(二) Django之Form

    Forms组件概述 forms组件 -Django提供的用语数据校验和模板渲染的组件 -在项目中创建一个py文件 -1 写一个类继承Form -2 在类中写属性,写的属性,就是要校验的字段 -3 使用 ...

  4. Git 基础 —— 常见使用场景

    Git 基础学习系列 Git 基础 -- 安装 配置 别名 对象 Git 基础 -- 常用命令 Git 基础 -- 常见使用场景 Git基础 -- Github 的使用 突然插入 Bugifx 工作, ...

  5. ubuntu搭建discuz论坛

    a.安装mysql database 1.安装mysql服务端 sudo apt-get install mysql-server  (在此过程中要求为mysql的root用户设置一个密码) 2.安装 ...

  6. json字符窜转对象

    第一种方法: 注意引用:using System.Runtime.Serialization.Json; using System.IO; static void Main(string[] args ...

  7. Python time strptime()与time strftime()

    time strftime()接收时间元组,返回表示时间的字符串. time strptime()把时间字符串,解析成一个时间元组. import time t = time.strftime('%Y ...

  8. Linux下指定pip install和make install安装路径

    在Linux下直接用pip install packageName,有些文件会被放到根目录下,如果没有sudo权限的话,是会安装失败的.这个以后我们就需要指定安装的目录了. pip install - ...

  9. UVa 10766 Organising the Organisation(矩阵树定理)

    https://vjudge.net/problem/UVA-10766 题意: 给出n, m, k.表示n个点,其中m条边不能直接连通,求生成树个数. 思路: 这也算个裸题,把可以连接的边连接起来, ...

  10. 机器学习-数据可视化神器matplotlib学习之路(二)

    之前学习了matplotlib的一些基本画图方法(查看上一节),这次主要是学习在图中加一些文字和其其它有趣的东西. 先来个最简单的图 from matplotlib import pyplot as ...