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. SOA解决方案Dubbo学习入门

    1.面向服务架构SOA简介 SOA:Service Oriented Architecture 也即现在常被提及的面向服务编程架构,其相对于传统的垂直架构来说是一种比较新的架构.

  2. 为DOM节点添加或者删除class

    项目中如果应用了常用的javascript类库,多数情况下,这些已经封装好的类库,都会封装一个类似于addClass和removeClass的方法,以便于我们对DOM节点的class进行操作. 以jQ ...

  3. 【Selenium-WebDriver自学】Selenium-RC脚本编写(十)

    ==================================================================================================== ...

  4. datetime模块的简单用法

    import datetime print(datetime.datetime.today()) #2018-08-14 14:18:28.575412 print(datetime.date.tod ...

  5. ios判断当前设备类型

    代码如下: + (NSString*) deviceString { // 需要#import "sys/utsname.h" struct utsname systemInfo; ...

  6. ubuntu 系统分区

    参考:https://blog.csdn.net/kudou1994/article/details/80913059

  7. Python linux 上的管理工具 pyenv 安装, pip 使用, python项目(版本分割, 项目分割, 虚拟环境创建)

    01: 假设你有一个最小环境安装的 centos-6.x 的linux操作系统 02: 安装 git => yum -y install git 03: 安装依赖 => yum -y in ...

  8. Memcache操作类

    using Memcached.ClientLibrary; using System; using System.Collections.Generic; using System.Linq; us ...

  9. 利用STM32CubeMX生成HID双向通讯工程

    使用开发板为正点原子ministm32 现在我们先使用HID descriptor Tool来生成我们需要的hid的 保存使用选择.H // D:\usb资料\HID\MSDEV\Projects\t ...

  10. js 深度拷贝

    js 数据类型 分为2种: 基本数据类型:Undefined.Null.Boolean.Number.String 复杂数据类型:Object.Array.function 他们的区别是在内存中的存储 ...