很简单很常用的一些东西,希望给需要的人帮助。

效果图如下:

自定义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 改变显示位置的更多相关文章

  1. highcharts图表的图例legend怎么改变显示位置

    一.将图例Legend放于图表右侧1.设置chart的marginRight属性值:chart: { marginRight: 120}2.设置legend图例属性值如下 legend: { alig ...

  2. 改变说明文档显示位置wrap

    装饰器会改变文档的显示位置 例子1:使用wrap前,输出内函数中的说明文档 def check(fun): """检查权限的装饰器""" d ...

  3. 关于元素设置margin-top能够改变body位置的原因及解决(子元素设置margin-top改变父元素定位)

    关于元素设置margin-top能够改变body位置的原因及解决(子元素设置margin-top改变父元素定位) 起因:在进行bootstrap的.navbar-brand内文字设置垂直居中时采用li ...

  4. bug -- android 7.0 popwindow显示位置异常情况解决

    android 7.0 popwindow显示位置异常,在android7.1官方进行解决了,但是还是要多7.0的bug进行解决,我的解决方案里面通过重写popwindow进行适配: import a ...

  5. delphi SetWindowPos改变窗体位置和状态

    http://blog.163.com/yuanliaofan@126/blog/static/1730690722012534428814/ delphi SetWindowPos改变窗体位置和状态 ...

  6. WPF用ShowDialog()弹出窗体时控制该窗体的显示位置,并传值回父窗体

    原文:http://blog.csdn.net/kiss0622/article/details/5852153 方法一: 1.父窗口代码 Window1.xaml.cs private void B ...

  7. 设置Toast显示位置

    设置Toast显示位置 两个方法可以设置显示位置: 方法一:setGravity(int gravity, int xOffset, int yOffset)三个参数分别表示(起点位置,水平向右位移, ...

  8. android--自己定义ProgressDialog显示位置(其他Dialog子类都能够设置)

    1.普通情况下,系统默认的Dialog显示位置为屏幕居中: pbDialog = new ProgressDialog(MainActivity.this); pbDialog.setMessage( ...

  9. QTbutton设置背景颜色和文字显示位置设置

    QPushButton * pQBtn = new QPushButton( cBuff, this ); pQBtn->setStyleSheet("text-align: left ...

随机推荐

  1. 給eclipse添加字体,设置字体

    问题? 一般情况的更换字体就是:1.首先打开Window ---> Preferences ---> General ---> Appearance ---> Colors a ...

  2. MyBatis传入参数为集合、数组SQL写法

    参考:http://blog.csdn.net/small____fish/article/details/8029030 foreach的主要用在构建in条件中,它可以在SQL语句中进行迭代一个集合 ...

  3. sql查看锁与解锁

    select request_session_id spid,OBJECT_NAME(resource_associated_entity_id) tableName from sys.dm_tran ...

  4. 我的Android第二章

    前言 之前有很多人遇到了关于内部类的问题[主要在android的学习之中会大量的使用到],内部类是什么,内部类怎么定义,内部类的分类,内部类的好处,内部类如何访问,这里我们来结合代码简单的理解一下 1 ...

  5. 自定义控件(View的绘制流程源码解析)

    参考声明:这里的一些流程图援引自http://a.codekk.com/detail/Android/lightSky/%E5%85%AC%E5%85%B1%E6%8A%80%E6%9C%AF%E7% ...

  6. 一个ubuntu phper的自我修养(lamp)

    lamp环境搭建出坑记 lamp虽然大家都懂,但是还是要解释一下先,要做的是一个狭义的解释,以对应我们即将搭建的环境. L指linux(ubuntu). A指apache(apache2). M指my ...

  7. JCEF 如何修改右键菜单项(JCEF在右键菜单中添加开发者选项-show dev tools)

    需求: 在界面的右键事件中添加一个打开开发者选项的菜单(Show Dev Tools) 所以我们可以看到的是在界面上右键,会有默认的一些菜单项(前进,后退,打印,查看源码),而这些功能并不一定是我们需 ...

  8. php 笔试题

    1.用PHP打印出前一天的时间格式是2006-5-10 22:21:21 解:echo date(‘Y-m-d H:i:s’, strtotime(‘-1 day’)); 原因: format 字符说 ...

  9. 将 List<UserInfo>中的对象按照UserInfo.name进行分组

    package yq; import java.util.ArrayList;import java.util.LinkedHashMap;import java.util.List; import ...

  10. 关于phpcms 万一忘记密码怎么破?

    莫慌~海洋小生教你~我也是偷偷学来的,呀哈哈哈! first:............................你就认命吧!哈哈哈... 开玩笑开玩笑! LOOK HERE ↓: 1.在没有安装 ...