一直自定按钮 遇到两个做的不好的地方。

1 是按钮响应方法时候状态自定义不好看 按压感不明显

2 是button上的title 是我自己用label写上去的 而不是用button的属性

这两天终于运用自如了。解决以上两个问题方法如下(待补充)

1.系统自带的按压感会随着自定义图片的颜色 或者是背景色深浅 可能会出现 按压的视觉效果不明显的状况 所以

我这里自定义一个高亮状态的图片背景 效果可观

先上图看效果

两行关键代码如下

[btn setBackgroundImage:[UIImage imageNamed:@"bg_home_tab.png"] forState:UIControlStateNormal];
[btn setBackgroundImage:[UIImage imageNamed:@"set_line_single@2X.png"] forState:UIControlStateHighlighted]; [btn.layer setMasksToBounds:YES];
[btn.layer setCornerRadius:5.0];//设置矩形四个圆角半径

这样就流畅的展示了按钮的响应状态

至于两张图片 我使用的都是一个单位的像素条 扁平化风格 也可以尝试选择别的样式

2.我说我之前写按钮标题 都是写一个label  在上面 而不是用UIButton的属性设置title,因为之前我的写法是 :

btn.titleLabel.text=@"提交";

然后按钮上啥都没有,我就自己写label了 现在才知道 btn 继承于UIView   不能用view 的属性去同样的方式写btn 的title

正确实践方法如下:

[btn setTitle:@"提交" forState:UIControlStateNormal];//关键是这句写标题
btn.titleLabel.textColor=[UIColor whiteColor]; //设定标题颜色
btn.titleLabel.font=[UIFont systemFontOfSize:];

IOS UIButton 自定义的补充学习的更多相关文章

  1. IOS UIButton用法详解

    这段代码动态的创建了一个UIButton,并且把相关常用的属性都列举了.希望对大家有用.   //这里创建一个圆角矩形的按钮UIButton *button1 = [UIButton buttonWi ...

  2. iOS 如何自定义UISearchBar 中textField的高度

    iOS 如何自定义UISearchBar 中textField的高度 只需设置下边的方法就可以 [_searchBar setSearchFieldBackgroundImage:[UIImage i ...

  3. iOS 隐藏自定义tabbar

    iOS  隐藏自定义tabbar -(void)viewWillAppear:(BOOL)animated { NSArray *array=self.tabBarController.view.su ...

  4. ios 实现自定义状态栏StatusBar 和 导航栏navigationBar 的状态和颜色

    很多app中可以看到不同与导航栏的状态栏的颜色,他妈的真绕嘴. 一.更改状态栏颜色 (StatusBar) 就是比如导航栏是红色的状态栏是绿色的. 要实现这样的效果其实很简单,就是添加一个背景view ...

  5. iOS UIButton 图片文字上下垂直布局 解决方案

    实现如图所示效果: 这是一个UIButton,需要改变image和title相对位置. 解决如下: //设置文字偏移:向下偏移图片高度+向左偏移图片宽度 (偏移量是根据[图片]大小来的,这点是关键)b ...

  6. 转 iOS Core Animation 动画 入门学习(一)基础

    iOS Core Animation 动画 入门学习(一)基础 reference:https://developer.apple.com/library/ios/documentation/Coco ...

  7. iOS使用自定义字体的方法(内置和任意下载ttf\otf\ttc字体文件)

    最近做了个有关阅读的应用,使用了自定义字体,学习了一下这方面的知识. 1.首先是最简单也普遍的做法,打包内置字符库文件: 把字体库文件添加到工程,如font1.ttf添加到工程,然后在工程plist添 ...

  8. ArcGIS API for JavaScript 4.2学习笔记[31] (补充学习)Task类

    Task这个东西很有用,是AJS中用于解决各种乱七八糟任务的一个类.它有很多子类,有用于空间分析的,有用于空间查询的,等等. 这篇作为补充学习的第一篇,也是进阶学习的第一篇,我就改个写法. 我将使用思 ...

  9. iOS UIButton文字和图片间距随意调整

    代码地址如下:http://www.demodashi.com/demo/11606.html 前记 在开发中,我们经常会遇到这么一种情况,就是一个按钮上面有图片也有文字,但是往往设计并不是我们想要的 ...

随机推荐

  1. <系统函数实现>memcmp

    这是我实现的memcmp函数: #include <stdio.h> #include <string.h> /* *int memcmp (const void *s1,co ...

  2. tomcat 粗略笔记

    GlobalNamingResources 存在于server.xml中,定义全局公共数据源,如果host中有大量引用相同的数据源,那么可以都配在这里 <GlobalNamingResource ...

  3. LC串联谐振回路

  4. Codeforces 627 A. XOR Equation (数学)

    题目链接:http://codeforces.com/problemset/problem/627/A 题意: 告诉你s 和 x,a + b = s    a xor b = x   a, b > ...

  5. QA技能必备

    一 常用Linux命令 二 自动化工具

  6. .Net项目版本号的生成

    给.Net项目编译的程序集加入版本号的方式有许多种,包括: 1. 默认的方式,在每个项目的AssemblyInfo.cs文件中指定版本号: // Version information for an ...

  7. vtk点云数据的显示[转]

    #include "vtkActor.h" #include "vtkRenderer.h" #include "vtkRenderWindow.h& ...

  8. 函数WideCharToMultiByte() 详解

    函数原型: int WideCharToMultiByte( UINT CodePage, DWORD dwFlags, LPWSTR lpWideCharStr, int cchWideChar, ...

  9. (2)html文本格式化 解说

  10. MyEclipse 8.5 开发环境配置,汉化,Aptana2.0插件,SVN 插件,Flex Builder 3/4 插件安装(转载)

    转载地址http://elf8848.iteye.com/blog/630864 下载MyEclipse 8.5 可以通过代理http://www.proxyie.cn/访问MyEclipse的官方网 ...