1.首先新建一个类该类继承UIButton

2.实现几个方法

1).改动字体的一些属性

-(instancetype)initWithFrame:(CGRect)frame{

self = [superinitWithFrame:frame];

if (self) {

1--》设置字体显示的位置(左.中.右)

self.titleLabel.textAlignment =NSTextAlignmentCenter;

2--》设置字体的大小

];

3--》设置字体的颜色

[selfsetTitleColor:[UIColorcolorWithRed:0.33fgreen:0.33fblue:0.33falpha:1.00f]forState:
UIControlStateNormal];

4--》选中之后的颜色

[selfsetTitleColor:[UIColorcolorWithRed:0.32fgreen:0.74fblue:1.00falpha:1.00f]forState:UIControlStateSelected];

}

return
self;

}

在很多情况下我们设置的button即有文字(title)又有图片(image)对于文字和图片的位置怎样设置仅仅须要完毕例如以下两种方法就可以

2).设置title所在的位置,前两个属性设置文字所在的位置,后两个属性设置文字的大小

-(CGRect)titleRectForContentRect:(CGRect)contentRect{

return
,, contentRect.);

}

3).设置图片所在的位置,当然这里要在參考前面设置字体的范围以及view的范围来设置,后期能够依据详细的范围来进行调整

-(CGRect)imageRectForContentRect:(CGRect)contentRect{

return
)/,
, , );

}

这种方法非常好使的

iOS总结(自己定义button)的更多相关文章

  1. iOS开发UI篇—Button基础

    iOS开发UI篇—Button基础 一.简单说明 一般情况下,点击某个控件后,会做出相应反应的都是按钮 按钮的功能比较多,既能显示文字,又能显示图片,还能随时调整内部图片和文字的位置 二.按钮的三种状 ...

  2. iOS设备下添加button的按下效果

    在触屏上, button的按下效果用:active触发, 但是我发现iOS设备上:active效果并没有生效. :active pseudo-class doesn't work in mobile ...

  3. iOS开发基础篇-Button基础

    一.简单介绍  UIButton 的功能:响应用户操作.显示文字.显示图片.调整内部图片和文字的位置. 二. UIButton 的状态  UIControlStateNormal :普通状态,为默认情 ...

  4. Android自己定义button实现长按功能

    Android自己定义button实现长按功能 通过自己定义BUTTON,写一个LongTouchBtn类,在按下的时候运行onTouchEvent事件,通过这个事件使用回调函数来实现长按功能! XM ...

  5. iOS 使用宏定义函数和代码块

    iOS使用宏定义函数和代码块 今天在开发过程中碰到一个问题:就是父类中要向外发送通知,然后子类中或者其他类中来接收它.当然一般是把它写到类方法中去,但是有个问题,就是如果调用的类不是它的子类,就不能直 ...

  6. 自己定义button

    我们应该建立自己的代码库,建立自己的工厂 苹果公司给我们提供了强大的利器 可是我们不应该以简简单单的实现基本功能就满足了 大牛的成长之路.都是自己慢慢深入研究 我们要有成长为大牛的目标 今天给大家写个 ...

  7. Qt之模型/视图(自己定义button)

    简述 衍伸前面的章节,我们对QTableView实现了数据显示.自己定义排序.显示复选框.进度条等功能的实现.本节主要针对自己定义button进行解说.这节过后,也希望大家对自己定义有更深入的了解.在 ...

  8. iOS开发自己定义键盘回车键Return Key

    在iOS开发中.用户在进行文本输入的时候,往往会用到虚拟键盘上的回车键,也就是Return Key.回车键有时候能够是"完毕"(表示输入结束).能够是"下一项" ...

  9. 【iOS】自己定义TabBarController

    一.自己定义的思路 iOS中的TabBarController确实已经非常强大了.大部分主流iOS应用都会採用. 可是往往也不能满足所有的需求,因此须要自己定义TabBar,自己定义须要对系统的Tab ...

随机推荐

  1. 关于TJOI2014的一道题——Alice and Bob

    B Alice and Bob •输入输出文件: alice.in/alice.out •源文件名: alice.cpp/alice.c/alice.pas • 时间限制: 1s 内存限制: 128M ...

  2. nodejs脚手架express-generator

    1.安装生成器 npm install express-generator -g 2. 创建名称为APP的应用: express my-project 3.安装依赖包 cd my-project np ...

  3. Vue2-Editor 使用

    Vue-Editor底层采取的是quill.js,而quill.js采用的是html5的新属性classList,所以版本低于ie10会报错“无法获取未定义或 null 引用的属性‘confirm’” ...

  4. Vue初级

    来学习vue.js的宝宝们应该都了解了什么是vue并且是有兴趣去学的,我也是自己学习vue,欢迎大家一起讨论. 现在,我么先自己尝试用vue来写个hello world吧. 一.创建一个 .html  ...

  5. 判断wifi是2.4G还是5G

    1.WifiInfo 源码: int mFrequency=wifiInfo.getFrequency(); /** * @hide * TODO: makes real freq boundarie ...

  6. jsp连接MySQL实现登录

    1.下载驱动,并把jar包放到Tomcat的lib目录下 下载连接 2.把jar包添加到项目中 3.登录页面 <%@ page language="java" content ...

  7. DeltaFish 校园物资共享平台 第三次小组会议

    一.想法 娄雨禛: 网页底层开发转移到后端,快速建站,效率高. 可以依照模板进行仿制. 可以考虑只进行页面设计. 但是出现问题不会调试. 所以自己写源码,做出一个大致的样子. 二.上周进度汇报 齐天杨 ...

  8. MxNet : use the MxNet windows versioin

    The MxNet needs  the following thirdparties: 1. lapack complie lapack-3.6.1: download the lapack-3.6 ...

  9. jquery-pjax

    项目介绍: Pjax是jQuery的一个插件,Pjax即pushState + Ajax,是实现无刷新Ajax加载并解决浏览器前进和后退问题的一个开源实现. 在2012年8月28日发布0.9版本. P ...

  10. sql server 查询数据判断为空

    and xxx is NOT null and xxx is null