swifttextfield代理方法
//MARK:textfield delegate
//键盘的高度
func textFieldShouldBeginEditing(textField: UITextField) -> Bool {
// print("开始编辑")
let fixedTop:CGFloat = kscreenHeight - 252
let convertRect:CGRect = loginScrollView.convertRect(textField.frame, toView: textField.superview)
let textFieledTop = convertRect.origin.y + textField.tt_height
var dispersion:CGFloat = 0.0
let offsetY:CGFloat = loginScrollView.contentOffset.y
if textFieledTop > fixedTop {
dispersion = textFieledTop - fixedTop - offsetY
var offset:CGPoint = loginScrollView.contentOffset
offset.y += dispersion
UIView.beginAnimations(nil, context: nil)
UIView.setAnimationDuration(0.3)
loginScrollView.contentOffset = offset
UIView.commitAnimations()
}
return true
}
func textFieldShouldReturn(textField: UITextField) -> Bool {
// print("return")
if textField.isEqual(mailAccountTF) {
mailAccountTF.resignFirstResponder()
passwordTF.becomeFirstResponder()
}else if textField.isEqual(passwordTF){
hideKeyboardAction()//键盘退出
}
return true
}
func textFieldDidBeginEditing(textField: UITextField) {
// print("进入编辑")
if textField.isEqual(mailAccountTF) {
mailAccountTF.becomeFirstResponder()
}else if textField.isEqual(passwordTF){
passwordTF.becomeFirstResponder()
}
}
func textFieldDidEndEditing(textField: UITextField) {
// print("退出编辑")
hideKeyboardAction()//键盘退出
}
func textFieldShouldEndEditing(textField: UITextField) -> Bool {
// print("开始退出编辑")
return true
}
//限制输入空格 键盘上的x键,输入一个删除一个
func textField(textField: UITextField, shouldChangeCharactersInRange range: NSRange, replacementString string: String) -> Bool {
if string == " " {
return false
}
return true
}
func textFieldShouldClear(textField: UITextField) -> Bool {
return true
}
//MARK:scrollviewdelegate
func scrollViewWillBeginDragging(scrollView: UIScrollView) {
hideKeyboardAction() //通过滑动隐藏键盘
}
func hideKeyboardAction(){
mailAccountTF.resignFirstResponder()
passwordTF.resignFirstResponder()
}
swifttextfield代理方法的更多相关文章
- 通读AFN②--AFN的上传和下载功能分析、SessionTask及相应的session代理方法的使用细节
这一部分主要研究AFN的上传和下载功能,中间涉及到各种NSURLSessionTask的一些创建的解析和HTTPSessionManager对RESTful风格的web应用的支持,同时会穿插一点NSU ...
- UITextField的代理方法:textField:shouldChangeCharactersInRange:replacementString
原文链接:http://www.cnblogs.com/zhanggui/p/6101813.html 这个我在开发的过程中用到的次数最多,因此这里就简单对其进行分析.先看看Command+点击 弹出 ...
- iOS开发之巧用Block和代理方法结合来传值
好久没写技术博客了,因为996的工作周期已经持续好几个月了.每天晚上回家都没有太多精力学习很多其他的东西,而且很多时候是接着完善工作的项目的模块开发.所以博客停歇了这么久,更新率也低了不少,今天补充一 ...
- UITableView的常用属性和代理方法
以下是近期总结的关于tableView的一些属性和代理方法,以及一些常见的问题,现汇总如下,今后还会持续更新,请继续关注: tableView 的头部和尾部视图属性: UISwitch *foot ...
- IOS中在自定义控件(非视图控制器)的视图跳转中 代理方法与代码块的比较
//代码块与代替代理的设计方法 我就以在自定义视图中(非视图控制器,不能实现视图控制功能),通过代理和代码块两种方法分别实现视图的跳转,进行对比 首先自定义了一个视图,上面有一个已经注册了得BUtto ...
- iOS开发——网络篇——NSURLSession,下载、上传代理方法,利用NSURLSession断点下载,AFN基本使用,网络检测,NSURLConnection补充
一.NSURLConnection补充 前面提到的NSURLConnection有些知识点需要补充 NSURLConnectionDataDelegate的代理方法有一下几个 - (void)conn ...
- UITableView表格视图、UITableView代理方法及应用
一.基本知识点 UITableView表格视图,是一个可以滚动的界面(理解为垂直滚动的UIScrollView),可展示多行数据,没有行数的限制,只能有一列. 使用UITableView: 1.展示信 ...
- 弃用的异步get和post方法之代理方法
#import "ViewController.h" #import "Header.h" @interface ViewController () <N ...
- IOS中tableView每组的头部控件、通过tableView的代理方法控制某一行的cell能否达到高亮选中状态
一.tableView每组的头部控件 1.控件宽度默认就是tableView的宽度 2.控件高度由下面的代理方法决定 - (CGFloat)tableView:(UITableView *)table ...
随机推荐
- Blocks的实现
相关结构体与函数 __block_impl 存储block对应类型信息(属于哪个Block大类,以及对应的回调函数指针FuncPtr struct __block_impl { void *isa; ...
- jQuery中find和filter的区别
本文来自:http://blog.csdn.net/woshixuye/article/details/7255260 这是jQuery里常用的2个方法. 他们2者功能是完全不同的,而初学者往往会被误 ...
- sql server使用中遇到的问题记录
一.sql server 不能连接远程服务器,但可以连接本地的数据库 我目前用的是sql server 2012 sp1,用着用着突然就不能连接远程服务器上的数据库了,崩溃了一天... 修复试了,卸载 ...
- Apache安装问题:configure: error: APR not found . Please read the documentation
Linux上安装Apache时,编译出现错误: checking for APR... no configure: error: APR not found . Please read the do ...
- Nginx 简单的负载均衡配置示例(转载)
原文地址:Nginx 简单的负载均衡配置示例(转载) 作者:水中游于 www.s135.com 和 blog.s135.com 域名均指向 Nginx 所在的服务器IP. 用户访问http://www ...
- Linux系统管理命令之权限管理
对于一个目录来说,x权限:可以cd进去 对于目录: 读:看 执行:进去 写:写操作 rw权限没有意义 umask 022 特殊权限: suid sgid 2种情况:对于文件:类似于suid对于 ...
- android switch(String)错误:Cannot switch on a value of type String for source level below 1.7
switch语句的判断条件可以接受int,byte,char,short,不能接受其他类型只有JDK版本1.7以上才可以支持String 设置如下可解决问题:(若没有JDK1.7版,可下载一下安装)菜 ...
- js中json对象和字符串的转换
JSON.parse() : 字符串-->json对象 var str = '{"name":"huangxiaojian","age" ...
- JavaScript中的函数表达式
在JavaScript中,函数是个非常重要的对象,函数通常有三种表现形式:函数声明,函数表达式和函数构造器创建的函数. 本文中主要看看函数表达式及其相关的知识点. 函数表达式 首先,看看函数表达式的表 ...
- html5 datalist自动完成
1.传统输入框 <label for="favorite_team">Favorite Team:</label> <input type=" ...