@implementation ViewController

- (void)viewDidLoad {
[super viewDidLoad]; //UITextView与UITextField主要区别:
//1、UITextView支持多行而UITextField只能是单行;
//2、UITextView继承UIScrollView,而后者继承至UIController UITextView* textView = [[UITextView alloc] init];
//注意:bounds的x、y起点都是0
textView.frame = self.view.bounds; //实现协议UITextViewDelegate
textView.delegate = self; //autoresizingMask是UIView就有的一个属性,用以调整子视图与父视图的宽高
// enum {
// UIViewAutoresizingNone = 0,
// UIViewAutoresizingFlexibleLeftMargin = 1 << 0,
// UIViewAutoresizingFlexibleWidth = 1 << 1,
// UIViewAutoresizingFlexibleRightMargin = 1 << 2,
// UIViewAutoresizingFlexibleTopMargin = 1 << 3,
// UIViewAutoresizingFlexibleHeight = 1 << 4,
// UIViewAutoresizingFlexibleBottomMargin = 1 << 5
// };
// UIViewAutoresizingNone就是不自动调整。
// UIViewAutoresizingFlexibleLeftMargin 自动调整与父视图左边的距离,保证与父视图右边的距离不变。
// UIViewAutoresizingFlexibleRightMargin 自动调整与父视图的右边距离,保证与父视图左边的距离不变。
// UIViewAutoresizingFlexibleTopMargin 自动调整与父视图顶部的距离,保证与父视图底部的距离不变。
// UIViewAutoresizingFlexibleBottomMargin 自动调整与父视图底部的距离,保证与与父视图顶部的距离不变。
// UIViewAutoresizingFlexibleWidth 自动调整自己的宽度,保证与父视图左边和右边的距离不变。
// UIViewAutoresizingFlexibleHeight 自动调整自己的高度,保证与父视图顶部和底部的距离不变。 //本例子为自适应高宽
textView.autoresizingMask =
UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;
//是否可以编辑
textView.editable = YES; textView.backgroundColor = [UIColor whiteColor];
textView.textColor = [UIColor blueColor];
textView.font = [UIFont fontWithName:@"Arial" size:18.0];
textView.text = @"\n第1行\n第2行\n第3行\n"; [self.view addSubview:textView]; } #pragma mark - UITextView Delegate Methods
//文字改变时
- (void)textViewDidChange:(UITextView *)textView {
NSLog(@"textViewDidChange:%@", textView.text);
} //此时回车将作为提交
-(BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text
{
NSLog(@"shouldChangeTextInRange:%@",text); if ([text isEqualToString:@"\n"]) {
//第一响应对象是窗口中,应用程序认为最适合处理事件的对象
//当文本框放弃第一响应对象,则软键盘退出
[textView resignFirstResponder];
return NO;
}
return YES;
} @end

UI控件(UITextView)的更多相关文章

  1. 【iOS 开发】基本 UI 控件详解 (UIButton | UITextField | UITextView | UISwitch)

    博客地址 : http://blog.csdn.net/shulianghan/article/details/50051499 ; 一. UI 控件简介 1. UI 控件分类 UI 控件分类 : 活 ...

  2. iOS 中UI控件的各种对齐方式总结

    1.textAligment : 文字的水平方向的对齐方式 取值 NSTextAlignmentLeft      = 0,    // 左对齐 NSTextAlignmentCenter    = ...

  3. ios 中的UI控件学习总结(1)

    UIKit框架提供了非常多功能强大又易用的UI控件 下面列举一些在开发中可能用得上的UI控件 UIButton 按钮 UILabel 文本标签 UITextField 文本输入框 UIImageVie ...

  4. UI控件概述

    常见UI控件 UIKit框架提供了非常多功能强大又易用的UI控件,以便于开发者打造出各式各样的App 以下列举一些在开发中常见的UI控件(稍后补上图片示例) 1.UILabel– 文本标签:作用是显示 ...

  5. Swift UI控件详细介绍(上)

    UI控件 首先介绍一下AppDelegate.swift@UIApplicationMain 调用了OC中的UIApplicationMain函数:UIApplicationMain是iOS应用程序的 ...

  6. 常用的UI控件

    关于本文:作为一名iOS软件工程师,熟练规范的使用常用的UI控件是必备的基础技能. 指示器(UIActivityIndicatorView)----转动的等待小菊花 提醒对话框(UIAlertView ...

  7. ANDROID L——Material Design详解(UI控件)

    转载请注明本文出自大苞米的博客(http://blog.csdn.net/a396901990),谢谢支持! Android L: Google已经确认Android L就是Android Lolli ...

  8. WinForm/Silverlight多线程编程中如何更新UI控件的值

    单线程的winfom程序中,设置一个控件的值是很easy的事情,直接 this.TextBox1.value = "Hello World!";就搞定了,但是如果在一个新线程中这么 ...

  9. 富客户端 wpf, Winform 多线程更新UI控件

    前言 在富客户端的app中,如果在主线程中运行一些长时间的任务,那么应用程序的UI就不能正常相应.因为主线程要负责消息循环,相应鼠标等事件还有展现UI. 因此我们可以开启一个线程来格外处理需要长时间的 ...

  10. UI控件(复习一下)

    如何修改控件状态• 可见,确实需要经常修改控件状态• 那如何去修改控件的状态呢?方法很简单➢ 每一个UI控件都是一个对象➢ 修改UI控件的状态,其实就是修改控件对象的属性➢ 比如修改UILabel显示 ...

随机推荐

  1. Google Analytics 链接点击次数记录

    <span> <a href="http://protect-your-family.hansaplast.com.my/upload/<?php echo $fil ...

  2. 【Java EE 学习 57】【酒店会员管理系统之分页模板书写】

    分页一直是一个比较麻烦的问题,特别是在我做的这个系统中更是有大量的分页,为了应对该问题,特地写了一个模板以方便代码重用,该模板包括后台分页的模板.前端显示的模板两部分. 一.分页分析 分页需要三种类型 ...

  3. UWP学习记录4-设计和UI之控件和模式1

    UWP学习记录4-设计和UI之控件和模式1 1.控件和事件简介 在 UWP 应用开发中,控件是一种显示内容或支持交互的 UI 元素. 控件是用户界面的构建基块. 我们提供了超过 45 种控件供你使用, ...

  4. 上传图片预览JS脚本 Input file图片预览的实现示例

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  5. MIT 6.828 JOS学习笔记16. Lab 2.2

    Part 3 Kernel Address Space JOS把32位线性地址虚拟空间划分成两个部分.其中用户环境(进程运行环境)通常占据低地址的那部分,叫用户地址空间.而操作系统内核总是占据高地址的 ...

  6. Service and controller in angularJs

    Separation of concern is at the heart while designing an AngularJS application. Your controller must ...

  7. 查看Linux系统版本与位数

    查看系统发行版信息 查看LSB (Linux Standard Base)本身的版本信息. .el5   .el5 .el5 -bit LSB executable, Intel 80386, ver ...

  8. 如何在Meteor中使用npm模块?

    首先,请在AtmosphereJs上搜索有无相关的封装包.尽量采用已有的封装包,而不是自己封装. 有两种方法在项目中使用来自npm的模块. 封装为Meteor包并在项目中添加包.使用meteor cr ...

  9. json相关,浏览器打开json格式的api接口时,进行格式化,chrome插件

    在chrome浏览器中安装Google jsonview插件能够自动格式化json格式的数据.

  10. getSlotFromBufferLocked: unknown buffer: 0xf3d94ca0

    安卓6.0模拟器导致,换一个模拟器解决