第二十篇、自定义UIButton(设置title和image的位置)
#import "CustomButton.h"
#define ImageW 15
#define ImageH 15
#define KRadio 0.75 @implementation CustomButton -(instancetype)initWithCoder:(NSCoder *)aDecoder{
if (self = [super initWithCoder:aDecoder]) { //设置图片显示的样式
//self.imageView.contentMode = UIViewContentModeCenter;
//self.titleLabel.textAlignment = NSTextAlignmentCenter;
}
return self;
} -(CGRect)titleRectForContentRect:(CGRect)contentRect{
CGFloat titleW = contentRect.size.width * KRadio;
CGFloat titleH = contentRect.size.height;
return CGRectMake(, , titleW, titleH);
} -(CGRect)imageRectForContentRect:(CGRect)contentRect{ CGFloat imageW = ImageW;
CGFloat imageH = ImageH;
CGFloat imageY = (contentRect.size.height-imageH) / 2.0;
CGFloat imageX = contentRect.size.width * KRadio;
return CGRectMake(imageX,imageY, imageW, imageH); // CGFloat imageW = ImageW;
// CGFloat imageH = contentRect.size.height;
// CGFloat imageX = contentRect.size.width-ImageW;
// return CGRectMake(imageX,0, imageW, imageH);
} -(void)setHighlighted:(BOOL)highlighted{
} //- (IBAction)clickTitle:(UIButton *)sender {
//
// [UIView animateWithDuration:0.25 animations:^{
// if (CGAffineTransformIsIdentity(sender.imageView.transform)) {
// sender.imageView.transform = CGAffineTransformMakeRotation(M_PI);
// }else{
// sender.imageView.transform = CGAffineTransformIdentity;
// }
//
// }];
//
//} @end
第二十篇、自定义UIButton(设置title和image的位置)的更多相关文章
- Python开发【第二十篇】:缓存
Python开发[第二十篇]:缓存redis&Memcache 点击这里 Python之路[第九篇]:Python操作 RabbitMQ.Redis.Memcache.SQLAlchemy ...
- 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 ...
- Egret入门学习日记 --- 第二十篇(书中 9.1~9.3 节 内容 组件篇)
第二十篇(书中 9.1~9.3 节 内容 组件篇) 第八章中的内容. 以上都是基本的Js知识,我就不录入了. 直接来看 第9章. 开始 9.1节. 以上内容告诉你,Egret官方舍弃了GUI,使用了E ...
- Python之路【第二十篇】:待更新中.....
Python之路[第二十篇]:待更新中.....
- [iOS]详解调整UIButton的title和image的位置
UIButton的默认布局是:title在右,image在左; 很多时候我们需要的是title在左边,或者title在下面,这时就需要调整UIButton的TitleLabel和ImageView的位 ...
- Python之路【第二十篇】Tornado框架
Tornado Tornado是使用Python编写的一个强大的.可扩展的Web服务器.它在处理严峻的网络流量时表现得足够强健,但却在创建和编写时有着足够的轻量级,并能够被用在大量的应用和工具中. 我 ...
- 玩转SSRS第十篇---自定义代码
提到SSRS 那么就不得不提一下自定义代码的功能,通过自定义代码,有时候可以解决一些比较复杂的问题,比如将让指定的数据行应用指定的属性值.此篇将演示如何通过简单结构的自定义代码进行报表样式的基本设计. ...
- 第二十篇 .NET高级技术之C#中的线程(二) 线程同步基础
1.同步要领 下面的表格列展了.NET对协调或同步线程动作的可用的工具: 简易阻止方法 构成 目的 Sleep 阻止给定的时间周期 Join 等待另一个线程 ...
- Python之路【第二十篇】其他WEB框架
WEB框架功能分析 WEB框架本质上,就是一个SOCKET Server WEB框架前面有WSGI或者是自己写的SOCKET,然后交给URL路由系统处理,然后交给某个函数或某个类,然后在模板里拿到模板 ...
随机推荐
- 转载总结 C# 多态(虚方法,抽象,接口实现)
前言:我们都知道面向对象的三大特性:封装,继承,多态.封装和继承对于初学者而言比较好理解,但要理解多态,尤其是深入理解,初学者往往存在有很多困惑,为什么这样就可以?有时候感觉很不可思议,由此,面向对象 ...
- lazyload 图片延迟加载
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- PS自定义对象二_PSCustomObject
创建自定义对象 $obj = [pscustomobject]@{a=1;b="";c=$null} % 选择属性列 $obj | gm | % definition ( $ob ...
- SmoothProgressBar
https://github.com/castorflex/SmoothProgressBar
- ADO.Net的小知识(连接数据库)二
上次提到数据库连接有两种形式断开式连接和打开式连接,断开式连接我已经讲解了,下面我来给大家讲解一下打开式连接 (1)引入命名空间:using System.Data.SqlClient; 该语句用于导 ...
- 【转】C++ char数组转化为string
有很多种方法: 假设c字符串定义为char ch[]="hello world!"; 1.向构造函数传入c字符串创建string对象: string str(ch); 2.使用拷贝 ...
- 【转】ubuntu修改IP地址和网关的方法
一.使用命令设置Ubuntu IP地址 1.修改配置文件blacklist.conf禁用IPV6 sudo vi /etc/modprobe.d/blacklist.conf 表示用vi编辑器(也可以 ...
- 简单改写SQL达到优化目的
select * from (select t.row_id, t.supplier_name, t.tel, address, t.contact, t.contact_post, t.contac ...
- vim高亮显示
在当期用户的主目录下创建文件.vimrc,打开编辑内容(~/.vimrc): filetype on syntax on
- 焦点轮播图——myfocus焦点图库
网站网址: http://demo.jb51.net/js/myfocus/demo.html 简单3步,你即可以用上myFocus. Step 1. 在html的标签内引入相关文件 <scri ...