重写TextField Rect 改变显示位置
很简单很常用的一些东西,希望给需要的人帮助。
效果图如下:

自定义textField
init() {
super.init(frame: CGRect(x: , y: , width: yourWidth, height: yourHeight))
//光标颜色修改
self.tintColor = UIColor.orangeColor()
}
override func editingRectForBounds(bounds: CGRect) -> CGRect {
return CGRectInset(bounds, , );
}
override func textRectForBounds(bounds: CGRect) -> CGRect {
return CGRectInset(bounds, , )
}
override func placeholderRectForBounds(bounds: CGRect) -> CGRect {
return CGRectInset(bounds, , )
}
override func leftViewRectForBounds(bounds: CGRect) -> CGRect {
var iconRect = super.leftViewRectForBounds(bounds)
iconRect.origin.x = iconRect.origin.x +
return iconRect
}
然后在需要使用的controller调用即可
//其他非相关代码已省略
func setupMobelLoginUI(){
...
mobTxtFld.backgroundColor = LoginConst.tfBackgroundColor
mobTxtFld.layer.cornerRadius = LoginConst.commonHeight /
mobTxtFld.clipsToBounds = true
mobTxtFld.layer.borderColor = LoginConst.tfBorderColor.CGColor
mobTxtFld.layer.borderWidth =
//leftView相关设置
let mobIcon = UIImageView(image: UIImage(named: "login_mobile"))
mobTxtFld.leftViewMode = UITextFieldViewMode.Always
mobTxtFld.leftView = mobIcon
view.addSubview(mobTxtFld)
mobTxtFld.snp_makeConstraints { (make) in
make.top.equalTo(titleLb.snp_bottom).offset(LoginConst.topVOffset)
make.centerX.equalTo(self.view)
make.width.equalTo()
make.height.equalTo(LoginConst.commonHeight)
}
//leftView相关设置
let codeIcon = UIImageView(image: UIImage(named: "login_yanzheng"))
verifyCodeTxtFld.leftViewMode = UITextFieldViewMode.Always
verifyCodeTxtFld.leftView = codeIcon
verifyCodeTxtFld.backgroundColor = LoginConst.tfBackgroundColor
verifyCodeTxtFld.layer.cornerRadius = LoginConst.commonHeight /
verifyCodeTxtFld.layer.masksToBounds = true
verifyCodeTxtFld.layer.borderColor = LoginConst.tfBorderColor.CGColor
verifyCodeTxtFld.layer.borderWidth =
view.addSubview(verifyCodeTxtFld)
verifyCodeTxtFld.snp_makeConstraints { (make) in
make.top.equalTo(mobTxtFld.snp_bottom).offset(LoginConst.verifyVMargin)
make.width.height.centerX.equalTo(mobTxtFld)
}
...
}
重写TextField Rect 改变显示位置的更多相关文章
- highcharts图表的图例legend怎么改变显示位置
一.将图例Legend放于图表右侧1.设置chart的marginRight属性值:chart: { marginRight: 120}2.设置legend图例属性值如下 legend: { alig ...
- 改变说明文档显示位置wrap
装饰器会改变文档的显示位置 例子1:使用wrap前,输出内函数中的说明文档 def check(fun): """检查权限的装饰器""" d ...
- 关于元素设置margin-top能够改变body位置的原因及解决(子元素设置margin-top改变父元素定位)
关于元素设置margin-top能够改变body位置的原因及解决(子元素设置margin-top改变父元素定位) 起因:在进行bootstrap的.navbar-brand内文字设置垂直居中时采用li ...
- bug -- android 7.0 popwindow显示位置异常情况解决
android 7.0 popwindow显示位置异常,在android7.1官方进行解决了,但是还是要多7.0的bug进行解决,我的解决方案里面通过重写popwindow进行适配: import a ...
- delphi SetWindowPos改变窗体位置和状态
http://blog.163.com/yuanliaofan@126/blog/static/1730690722012534428814/ delphi SetWindowPos改变窗体位置和状态 ...
- WPF用ShowDialog()弹出窗体时控制该窗体的显示位置,并传值回父窗体
原文:http://blog.csdn.net/kiss0622/article/details/5852153 方法一: 1.父窗口代码 Window1.xaml.cs private void B ...
- 设置Toast显示位置
设置Toast显示位置 两个方法可以设置显示位置: 方法一:setGravity(int gravity, int xOffset, int yOffset)三个参数分别表示(起点位置,水平向右位移, ...
- android--自己定义ProgressDialog显示位置(其他Dialog子类都能够设置)
1.普通情况下,系统默认的Dialog显示位置为屏幕居中: pbDialog = new ProgressDialog(MainActivity.this); pbDialog.setMessage( ...
- QTbutton设置背景颜色和文字显示位置设置
QPushButton * pQBtn = new QPushButton( cBuff, this ); pQBtn->setStyleSheet("text-align: left ...
随机推荐
- 給eclipse添加字体,设置字体
问题? 一般情况的更换字体就是:1.首先打开Window ---> Preferences ---> General ---> Appearance ---> Colors a ...
- MyBatis传入参数为集合、数组SQL写法
参考:http://blog.csdn.net/small____fish/article/details/8029030 foreach的主要用在构建in条件中,它可以在SQL语句中进行迭代一个集合 ...
- sql查看锁与解锁
select request_session_id spid,OBJECT_NAME(resource_associated_entity_id) tableName from sys.dm_tran ...
- 我的Android第二章
前言 之前有很多人遇到了关于内部类的问题[主要在android的学习之中会大量的使用到],内部类是什么,内部类怎么定义,内部类的分类,内部类的好处,内部类如何访问,这里我们来结合代码简单的理解一下 1 ...
- 自定义控件(View的绘制流程源码解析)
参考声明:这里的一些流程图援引自http://a.codekk.com/detail/Android/lightSky/%E5%85%AC%E5%85%B1%E6%8A%80%E6%9C%AF%E7% ...
- 一个ubuntu phper的自我修养(lamp)
lamp环境搭建出坑记 lamp虽然大家都懂,但是还是要解释一下先,要做的是一个狭义的解释,以对应我们即将搭建的环境. L指linux(ubuntu). A指apache(apache2). M指my ...
- JCEF 如何修改右键菜单项(JCEF在右键菜单中添加开发者选项-show dev tools)
需求: 在界面的右键事件中添加一个打开开发者选项的菜单(Show Dev Tools) 所以我们可以看到的是在界面上右键,会有默认的一些菜单项(前进,后退,打印,查看源码),而这些功能并不一定是我们需 ...
- php 笔试题
1.用PHP打印出前一天的时间格式是2006-5-10 22:21:21 解:echo date(‘Y-m-d H:i:s’, strtotime(‘-1 day’)); 原因: format 字符说 ...
- 将 List<UserInfo>中的对象按照UserInfo.name进行分组
package yq; import java.util.ArrayList;import java.util.LinkedHashMap;import java.util.List; import ...
- 关于phpcms 万一忘记密码怎么破?
莫慌~海洋小生教你~我也是偷偷学来的,呀哈哈哈! first:............................你就认命吧!哈哈哈... 开玩笑开玩笑! LOOK HERE ↓: 1.在没有安装 ...