iOS开发系列之四 - UITextView 使用方法小结
// 初始化输入框并设置位置和大小
UITextView *textView = [[UITextView alloc] initWithFrame:CGRectMake(10, 10, 300, 180)];
// 设置预设文本
textView.text = @"";
// 设置文本字体
textView.font = [UIFont fontWithName:@"Arial" size:16.5f];
// 设置文本颜色
textView.textColor = [UIColor colorWithRed:51/255.0f green:51/255.0f blue:51/255.0f alpha:1.0f];
// 设置文本框背景颜色
textView.backgroundColor = [UIColor colorWithRed:254/255.0f green:254/255.0f blue:254/255.0f alpha:1.0f];
// 设置文本对齐方式
textView.textAlignment = NSTextAlignmentLeft; // iOS7中文本对齐方式有下面几种:
// enum {
// NSTextAlignmentLeft = 0, 左对齐,默认
// NSTextAlignmentCenter = 1, 居中对齐
// NSTextAlignmentRight = 2, 右对齐
// NSTextAlignmentJustified = 3, 在一个段落的最后一行自然对齐
// NSTextAlignmentNatural = 4, 默认对齐方式
// } NSTextAlignment; // 设置自己主动纠错方式
textView.autocorrectionType = UITextAutocorrectionTypeNo; // 自己主动纠错方式有下面几种:
// enum {
// UITextAutocorrectionTypeDefault, 默认
// UITextAutocorrectionTypeNo, 不自己主动纠错
// UITextAutocorrectionTypeYes, 自己主动纠错
// } UITextAutocorrectionType; // 设置自己主动大写方式
textView.autocapitalizationType = UITextAutocapitalizationTypeNone; // 自己主动大写方式有下面几种:
// enum {
// UITextAutocapitalizationTypeNone, 不自己主动大写
// UITextAutocapitalizationTypeWords, 单词首字母大写
// UITextAutocapitalizationTypeSentences, 句子的首字母大写
// UITextAutocapitalizationTypeAllCharacters, 全部字母都大写
// } UITextAutocapitalizationType; // 设置键盘的样式
textView.keyboardType = UIKeyboardTypeDefault; // 键盘样式有下面几种:
// enum {
// UIKeyboardTypeDefault, 默认键盘,支持全部字符
// UIKeyboardTypeASCIICapable, 支持ASCII的默认键盘
// UIKeyboardTypeNumbersAndPunctuation, 标准电话键盘,支持+*#字符
// UIKeyboardTypeURL, 仅仅支持URL字符的URL键盘,支持.combutton
// UIKeyboardTypeNumberPad, 数字键盘
// UIKeyboardTypePhonePad, 电话键盘
// UIKeyboardTypeNamePhonePad, 支持输入人名的电话键盘
// UIKeyboardTypeEmailAddress, 电子邮件键盘
// UIKeyboardTypeDecimalPad, 有数字和小数点的数字键盘
// UIKeyboardTypeTwitter, 优化的键盘,方便输入@、#字符
// UIKeyboardTypeAlphabet = UIKeyboardTypeASCIICapable,
// } UIKeyboardType; // 设置return键样式
textView.returnKeyType = UIReturnKeyDefault; // return键有下面几种样式:
// enum {
// UIReturnKeyDefault, 默认,灰色button。标有Return
// UIReturnKeyGo, 标有Go的蓝色button
// UIReturnKeyGoogle, 标有Google的蓝色button,用于搜索
// UIReturnKeyJoin, 标有Join的蓝色button
// UIReturnKeyNext, 标有Next的蓝色button
// UIReturnKeyRoute, 标有Route的蓝色button
// UIReturnKeySearch, 标有Search的蓝色button
// UIReturnKeySend, 标有Send的蓝色button
// UIReturnKeyYahoo, 标有Yahoo的蓝色button
// UIReturnKeyYahoo, 标有Yahoo的蓝色button
// UIReturnKeyEmergencyCall, 紧急呼叫button
// } UIReturnKeyType; // 设置能否够拖动
textView.scrollEnabled = YES;
// 设置代理
textView.delegate = self; // 自己定义文本框placeholder
tip = [[UILabel alloc] initWithFrame:CGRectMake(16, 14, 320, 25)];
tip.text = @"您的意见是我们前进的最大动力,谢谢!";
tip.font = [UIFont fontWithName:@"Arial" size:16.5f];
tip.backgroundColor = [UIColor clearColor];
tip.enabled = NO; // 自己定义文本框字数统计
count = [[UILabel alloc] initWithFrame:CGRectMake(270, 170, 35, 20)];
count.text = @"240";
count.textAlignment = NSTextAlignmentRight;
count.font = [UIFont fontWithName:@"Arial" size:15.0f];
count.backgroundColor = [UIColor clearColor];
count.enabled = NO; // 显示文本框及相关控件
[self.view addSubview:feedback];
[self.view addSubview:tip];
[self.view addSubview:count]; // 限制输入文本长度
- (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text
{
if (range.location < 240)
{
return YES;
} else {
return NO;
}
} // 自己定义文本框placeholder
- (void)textViewDidChange:(UITextView *)textView
{
count.text = [NSString stringWithFormat:@"%d", 240 - feedback.text.length];
if (textView.text.length == 0)
{
tip.text = @"您的意见是我们前进的最大动力,谢谢!";
} else {
tip.text = @"";
}
}
本文固定链接:http://www.itechzero.com/ios-development-series-four-uitextview-usage-summary.html,转载请注明出处。
iOS开发系列之四 - UITextView 使用方法小结的更多相关文章
- iOS开发系列之三 - UITextField 使用方法小结
// 初始化输入框并设置位置和大小 UITextField *textField = [[UITextField alloc] initWithFrame:CGRectMake(10, 100, 30 ...
- iOS开发系列--Swift语言
概述 Swift是苹果2014年推出的全新的编程语言,它继承了C语言.ObjC的特性,且克服了C语言的兼容性问题.Swift发展过程中不仅保留了ObjC很多语法特性,它也借鉴了多种现代化语言的特点,在 ...
- iOS开发系列--App扩展开发
概述 从iOS 8 开始Apple引入了扩展(Extension)用于增强系统应用服务和应用之间的交互.它的出现让自定义键盘.系统分享集成等这些依靠系统服务的开发变成了可能.WWDC 2016上众多更 ...
- iOS开发系列--Swift进阶
概述 上一篇文章<iOS开发系列--Swift语言>中对Swift的语法特点以及它和C.ObjC等其他语言的用法区别进行了介绍.当然,这只是Swift的入门基础,但是仅仅了解这些对于使用S ...
- iOS开发系列--通知与消息机制
概述 在多数移动应用中任何时候都只能有一个应用程序处于活跃状态,如果其他应用此刻发生了一些用户感兴趣的那么通过通知机制就可以告诉用户此时发生的事情.iOS中通知机制又叫消息机制,其包括两类:一类是本地 ...
- iOS开发系列--数据存取
概览 在iOS开发中数据存储的方式可以归纳为两类:一类是存储为文件,另一类是存储到数据库.例如前面IOS开发系列-Objective-C之Foundation框架的文章中提到归档.plist文件存储, ...
- iOS开发系列--网络开发
概览 大部分应用程序都或多或少会牵扯到网络开发,例如说新浪微博.微信等,这些应用本身可能采用iOS开发,但是所有的数据支撑都是基于后台网络服务器的.如今,网络编程越来越普遍,孤立的应用通常是没有生命力 ...
- iOS开发系列--让你的应用“动”起来
--iOS核心动画 概览 在iOS中随处都可以看到绚丽的动画效果,实现这些动画的过程并不复杂,今天将带大家一窥iOS动画全貌.在这里你可以看到iOS中如何使用图层精简非交互式绘图,如何通过核心动画创建 ...
- iOS开发系列--并行开发其实很容易
--多线程开发 概览 大家都知道,在开发过程中应该尽可能减少用户等待时间,让程序尽可能快的完成运算.可是无论是哪种语言开发的程序最终往往转换成汇编语言进而解释成机器码来执行.但是机器码是按顺序执行的, ...
随机推荐
- Vue项目结合vux使用
引入vux 1.直接安装或者更新: npm install vux --save 或者使用 yarn yarn add vux // 安装 yarn upgrade vux // 更新 2.vux2必 ...
- pandas 7 合并 merge 水平合并,数据会变宽
pd.merge( df1, df2, on=['key1', 'key2'], left_index=True, right_index=True, how=['left', 'right', 'o ...
- 洛谷 P1005 矩阵取数游戏 (区间dp+高精度)
这道题大部分时间都在弄高精度-- 还是先讲讲dp吧 这道题是一个区间dp,不过我还是第一次遇到这种类型的区间dp f[i][j]表示取了数之后剩下i到j这个区间的最优值 注意这里是取了i之前和j之后的 ...
- lower_bound与upper_bound
昨天一道题目用了lower_bound,大致了解了lower_bound指的是第一个>=x的位置.但是之前对于upper_bound有误解,其实upper_bound指的是第一个>x的位置 ...
- 如何检查 Android 应用的内存使用情况
Android是为移动设备而设计的,所以应该关注应用的内存使用情况.尽管Android的Dalvik虚拟机会定期执行垃圾回收操作,但这也不意味着就可以忽视应用在何时何处进行内存分配和释放.为了提供良好 ...
- Java数组与栈内存、堆内存
package ch4; /** * Created by Jiqing on 2016/11/9. */ public class ArrayInRam { public static void m ...
- 语法错误: unexpected ''); ?></span></span></h2> ' (T_CONSTANT_ENCAPSED_STRING), expecting ',' or ';'
语法错误: unexpected ''); ?></span></span></h2>' (T_CONSTANT_ENCAPSED_STRING), expe ...
- Fast Flux技术——本质就是跳板,控制多个机器,同一域名指向极多的IP(TTL修改为0),以逃避追踪
转自:http://ytuwlg.iteye.com/blog/355718 通过病毒邮件和欺诈网站学到的对付网络封锁的好东西:Fast Flux技术 收到一封邮件,引起我的好奇了: 邮件标题是:Ha ...
- Random numbers
Most computer programs do the same thing every time they execute, given the same inputs, so they are ...
- 【转】Android ClearEditText:输入用户名、密码错误时整体删除及输入为空时候晃动提示
1 package com.lixu.clearedittext; 2 3 4 import android.app.Activity; 5 import android.os.Bundle; 6 i ...