网站大量收购闲置独家精品文档,联系QQ:2885784924

最全的Swift社交应用文本输入优化汇总.docx

最全的Swift社交应用文本输入优化汇总.docx

  1. 1、本文档共9页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

最全的Swift社交应用文本输入优化汇

一、输入相关的优化问题

在大部分应用中,都有输入的需求,面对众多用户,他们的想法各异,输入的文本内容也是千奇百怪,面对不同的输入,我们该如何优化输入体验?本文将汇总一下Swift社交应用文本输入优化技巧。

这里集中汇总输入相关问题,主要如下:输入控件UITextField跟随键盘移动

过滤输入内容

响应编程的处理,去除体验不好的对话框、HUD提示中文输入

二、输入框随键盘移动

界面构建有两种方法,代码或者storyboard/xib,这两种方法在处理键盘移动上方法相同,这里推荐使用已经封装好的第三方框架:TPKeyboardAvoiding

1、代码处理方法

rootView使用**TPKeyboardAvoding**框架中的TPKeyboardAvoidingScrollView来初使化。例如,登录界面,LoginViewController(继承自UIViewController),处理方法如下:

letrootView=TPKeyboardAvoidingScrollView(frame:self.view.bounds);

//...

//addallsubviewstorootView

//...self.view.addSubview(rootView)

代码构建界面,实现输入框随键盘移动,需要将类**TPKeyboardAvoidingScrollView**做为根

视图来处理。

2、storyboard/xib处理办法

storyboard/xib 处理起来更简单,将视图控制器的 rootView 设置为

TPKeyboardAvoidingScrollView即可

选择控制器的根视图

设置默认实例化类

三、常用基本设置

1、常用基本设置

包括打开键盘、关闭键盘、指定键盘的输入类型、指定return按钮的类型,如以下代码

//打开键盘self.inputText.becomeFirstResponder()

//关闭键盘self.inputText.resignFirstResponder()

//指定键盘的输入类型

self.inputText.keyboardType=UIKeyboardType.NumberPad

//指定return按键的类型self.inputText.returnKeyType=UIReturnKeyType.Go2、通过代理过滤输入

通过UITextField/UITextView的代理,可以更精确的控制输入,例如:过滤指定字符、超过

字符数禁止输入等

(1)UITextField代码如下:

//设置代理,可根据实际情况来设置代理,这里使用self来指定self.textField.delegate=self

//代理方法实现

functextField(textField:UITextField,shouldChangeCharactersInRange

range:NSRange,replacementStringstring:String)-Bool

{

//禁止输入空格

if(string==){

returnfalse

}

//按下回车后取消键盘

if(string==\n){textField.resignFirstResponder()returnfalse

}

returntrue

}

UITextView代码如下:

//设置代理,可根据实际情况来设置代理,这里使用self来指定self.textView.delegate=self

//代理方法实现

functextView(textView:UITextView,shouldChangeTextInRangerange

:NSRange,

replacementTexttext:String)-Bool

{

//禁止输入空格

if(text==){

returnfalse

}

//按下回车后取消键盘

if(text==\n){textView.resignFirstResponder()returnfalse

}

returntrue

}

UITextField/UITextView可以通过代理方法实时检测用户输入的内容,方便对输入约束,例如,在输入超过10个字符时,禁止用户输入,不过这种体验不好,建议不要使用

四、响应编程处理,精确提示信息

1、如何优化

输入信息的约束一般是将规则直接提示给用户,例如:社交中用户昵称的输入:请输入1-8位的字

文档评论(0)

hao187 + 关注
官方认证
内容提供者

该用户很懒,什么也没介绍

认证主体武汉豪锦宏商务信息咨询服务有限公司
IP属地湖北
统一社会信用代码/组织机构代码
91420100MA4F3KHG8Q

1亿VIP精品文档

相关文档