import UIKit

class ResetBtn: UIButton {

    let IMAGE_RATIO :CGFloat = 0.7  // 图片占整个按钮高度的比例

    let TITLE_FONT:CGFloat =    // 设置按钮标题字体默认的大小
override init(frame: CGRect) { super.init(frame: frame) self.setImageAndTitle() } required init?(coder aDecoder: NSCoder) { super.init(coder: aDecoder) self.setImageAndTitle()
} func setImageAndTitle(){ self.imageView?.contentMode = .Center // 设置图片显示的模式 居中 self.titleLabel?.textAlignment = .Center // 文本文字居中显示 self.titleLabel?.font = UIFont.systemFontOfSize(TITLE_FONT) //文本文字默认大小
self.setTitleColor(UIColor.lightGrayColor(), forState: .Normal) // 文本文字默认颜色 } /// 重写highlighted 状态 override var highlighted : Bool { set{ }
get{ return false
} } override func imageRectForContentRect(contentRect: CGRect) -> CGRect { let imageX:CGFloat =
let imageY:CGFloat =
let imageW:CGFloat = self.frame.size.width
let imageH:CGFloat = self.frame.size.height * IMAGE_RATIO return CGRectMake(imageX, imageY, imageW, imageH) } override func titleRectForContentRect(contentRect: CGRect) -> CGRect { let titleX:CGFloat =
let titleY:CGFloat = self.frame.size.height * IMAGE_RATIO let titleW:CGFloat = self.frame.size.width
let titleH:CGFloat = self.frame.size.height * (1.0 - IMAGE_RATIO) return CGRectMake(titleX, titleY, titleW, titleH) } }

Swift重写UIButton的图片和标题的位置的更多相关文章

  1. ios UIButton设置单选效果,以及同时设置图片和标题

    一,设置单选效果 - (void)selectedBtnPress:(UIButton*)sender { //首先把原来按钮的选中效果消除 for (int i=0;i<num;i++) {/ ...

  2. UIButton图片文字控件位置自定义(图片居右文字居左、图片居中文字居中、图片居左文字消失等)

    在开发中经常会碰到需要对按钮中的图片文字位置做调整的需求.第一种方式是通过设置按钮中图片文字的偏移量.通过方法setTitleEdgeInsets和setImageEdgeInsets实现 代码如下: ...

  3. iOS 11 导航栏 item 偏移问题 和 Swift 下 UIButton 设置 title、image 显示问题

    html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,bi ...

  4. jQuery hover事件鼠标滑过图片半透明标题文字滑动显示隐藏

    1.效果及功能说明 hover事件制作产品图片鼠标滑过图片半透明,标题文字从左到右滑动动画移动显示隐藏 2.实现原理 首先把效果都隐藏,然后定义一个伪类来触发所有的效果,接下来当触发伪类后会有一个遍历 ...

  5. artdialog的图片,标题,以及关闭按钮不显示的问题

    因其它css样式文件中包含“div{ overflow:hidden; }”引起的artdialog的图片,标题,以及关闭按钮不显示的问题: 如下图: 解决办法:在artdialog的样式文件顶部添加 ...

  6. iOS 实现启动屏动画(Swift实现,包含图片适配)

    代码地址如下:http://www.demodashi.com/demo/12090.html 准备工作 首先我们需要确定作为宣传的图片的宽高比,这个一般是与 UI 确定的.一般启动屏展示会有上下两部 ...

  7. word中更改图片和标题之间的垂直距离

    word中插入图片后.往往须要给图片加上标题. 你插入图片和给图片插入标题时,word用的是默认的格式给你插入的图片和标题. 假如原来的paragraph是2倍行距.你的图片和标题之间的距离也是2倍行 ...

  8. UIButton的图片和文字相对位置调整

    通常.假设直接设置UIButton的图片和文字,默认的两者相对位置可能不是我们想要的,那么须要进行调整. 须要用到的函数例如以下: UIEdgeInsetsMake(CGFloat top, CGFl ...

  9. [iOS]详解调整UIButton的title和image的位置

    UIButton的默认布局是:title在右,image在左; 很多时候我们需要的是title在左边,或者title在下面,这时就需要调整UIButton的TitleLabel和ImageView的位 ...

随机推荐

  1. MapReduce高级编程2

    MapReduce Top N .二次排序,MapJoin: TOP N 对于一组输入List(key,value),我们要创建一个Top N 列表,这是一种过滤模式,查看输入数据特定子集,观察用户的 ...

  2. Android 支付密码输入框,自定义EditText实现密码输入框功能;

    刚撸出来的密码输入框,注释和逻辑看着挺清晰的,一些属性还没有添加,下个博客把属性添加上去: 看一下图: 直接看代码吧! import android.content.Context; import a ...

  3. 限制EditText最多输入n位,设置EditText最大输入长度;

    1.比较笨的方法: /** * 设置edittext最大的输入限制 * @param editText * @param length */ private void setMaxLength(Edi ...

  4. SQL server 数据库的数据完整性

    存储在数据库中的所有数据值均正确的状态.如果数据库中存储有不正确的数据值,则该数据库称为已丧失数据完整性. 详细释义 数据库中的数据是从外界输入的,而数据的输入由于种种原因,会发生输入无效或 错误信息 ...

  5. tornado-5.1版本

    server.py python server.py执行 import tornado.ioloop import tornado.options import tornado.web from to ...

  6. 500 OOPS: could not read chroot() list file:/etc/vsftpd/chroot_list

    出错原因:用户没有变更根目录的权限. ftp用户默认的根目录是/home/ftp,如果要切换登陆目录,需要给予权限 解决方法: 第一步, 打开/etc/vsftpd/vsftpd.conf,做如下配置 ...

  7. 查询oracle约束所关联的表

    ORA-02292: 违反完整约束条件 (ADMIN.FK_PROJECTP_RELATIONS_OFFICIAL) - 已找到子记录 遇到这样的错误,熟悉的话可能从约束名称看出是那张表的约束,因为名 ...

  8. 15.unbuntu下安装vmware-tools

    链接地址:https://blog.csdn.net/yuanxiang01/article/details/78787823

  9. excel表格如何打斜杠

    https://jingyan.baidu.com/article/5bbb5a1b3f471613eba17908.html

  10. yarn 日志查看

    1.  yarn 日志列表 yarn application -list 2. impala-shell impala-shell -q 'invalidate metadata' ## impala ...