UIButton *  button =[[UIButton alloc]init];
button.backgroundColor=[UIColor redColor];
[button setTitle:@"我是button" forState:UIControlStateNormal];
button.frame = CGRectMake(, , , ) ;
[self.view addSubview:button];

可能有时候,想让title不在中间或者靠某一边,现在就举个例子怎么把文字在button的底部。

代码:

 button.contentEdgeInsets = UIEdgeInsetsMake(, , , );

然后看一下 视图是这个样子:

这里边用到

button.contentEdgeInsets = UIEdgeInsetsMake(100, 0, 0, 0);  //UIEdgeInsetsMake(距离top的距离, 距离left的距离, 距离botton的距离, 距离right的距离)

//设置 button的内容的便宜量

@property(nonatomic)          UIEdgeInsets contentEdgeInsets UI_APPEARANCE_SELECTOR; // 这是内容的偏移量
@property(nonatomic) UIEdgeInsets titleEdgeInsets; // title的偏移量
@property(nonatomic) BOOL reversesTitleShadowWhenHighlighted; // default is NO. if YES, shadow reverses to shift between engrave and emboss appearance
@property(nonatomic) UIEdgeInsets imageEdgeInsets; // image的偏移量
@property(nonatomic) BOOL adjustsImageWhenHighlighted; // default is YES. if YES, image is drawn darker when highlighted(pressed)当高亮的时候if yes 图片自适应
 @property(nonatomic) BOOL adjustsImageWhenDisabled; // default is YES. if YES, image is drawn lighter when disabled
@property(nonatomic) BOOL showsTouchWhenHighlighted; // 当高亮的时候if yes 图片自适应
@property(nonatomic,retain) UIColor *tintColor NS_AVAILABLE_IOS(5_0); //高亮颜色 @property(nonatomic,readonly) UIButtonType buttonType; //button的类型

[button setTitleShadowColor:[UIColor redColor] forState:UIControlStateNormal];

//设置文字的边框颜色

不太明显,效果还是有的。

typedef NS_ENUM(NSInteger, UIButtonType) {
UIButtonTypeCustom = , // no button type
UIButtonTypeSystem NS_ENUM_AVAILABLE_IOS(7_0), // standard system button UIButtonTypeDetailDisclosure,
UIButtonTypeInfoLight,
UIButtonTypeInfoDark, //
UIButtonTypeContactAdd, //按钮上面是哥加号 UIButtonTypeRoundedRect = UIButtonTypeSystem, //系统默认的
}; 创建button的另一中写法:

button =[UIButton buttonWithType:UIButtonTypeInfoDark];

- (void)setTitle:(NSString *)title forState:(UIControlState)state;                     // 设置button的title
- (void)setTitleColor:(UIColor *)color forState:(UIControlState)state UI_APPEARANCE_SELECTOR; // 设置buttontitle的颜色
- (void)setTitleShadowColor:(UIColor *)color forState:(UIControlState)state UI_APPEARANCE_SELECTOR; // default is nil. use 50% black设置title的字体的阴影颜色
- (void)setImage:(UIImage *)image forState:(UIControlState)state; // default is nil. should be same size if different for different states 设置button的image 图片 大小是图片的真实大小
- (void)setBackgroundImage:(UIImage *)image forState:(UIControlState)state UI_APPEARANCE_SELECTOR; // default is nil 设置图片的背景 image会铺满button
- (void)setAttributedTitle:(NSAttributedString *)title forState:(UIControlState)state NS_AVAILABLE_IOS(6_0); // default is nil. title is assumed to be single line 设置 自定义的字符串为button的title
- (NSString *)titleForState:(UIControlState)state;          //  获取某个状态的title
- (UIColor *)titleColorForState:(UIControlState)state; //获取某个状态的title的字体颜色
- (UIColor *)titleShadowColorForState:(UIControlState)state; //获得某个状态的阴影颜色
- (UIImage *)imageForState:(UIControlState)state; //获得某个状态的image
- (UIImage *)backgroundImageForState:(UIControlState)state; //获得背景图片
- (NSAttributedString *)attributedTitleForState:(UIControlState)state NS_AVAILABLE_IOS(6_0); //获得自定义字符串
@property(nonatomic,readonly,retain) NSString *currentTitle;             // normal/highlighted/selected/disabled. can return nil 正常获取当前的title
@property(nonatomic,readonly,retain) UIColor *currentTitleColor; // normal/highlighted/selected/disabled. always returns non-nil. default is white(1,1) 获取当前title的颜色
@property(nonatomic,readonly,retain) UIColor *currentTitleShadowColor; // normal/highlighted/selected/disabled. default is white(0,0.5).获取当前的阴影颜色
@property(nonatomic,readonly,retain) UIImage *currentImage; // normal/highlighted/selected/disabled. can return nil 获取当前的imager
@property(nonatomic,readonly,retain) UIImage *currentBackgroundImage; // normal/highlighted/selected/disabled. can return nil 获取当前的背景image
@property(nonatomic,readonly,retain) NSAttributedString *currentAttributedTitle NS_AVAILABLE_IOS(6_0); // normal/highlighted/selected/disabled. can return nil // return title and image views. will always create them if necessary. always returns nil for system buttons
@property(nonatomic,readonly,retain) UILabel *titleLabel NS_AVAILABLE_IOS(3_0); 获取content的view 就是一个lable
@property(nonatomic,readonly,retain) UIImageView *imageView NS_AVAILABLE_IOS(3_0); imageView 就是button的image的试图
 (CGRect)backgroundRectForBounds:(CGRect)bounds;
- (CGRect)contentRectForBounds:(CGRect)bounds;
- (CGRect)titleRectForContentRect:(CGRect)contentRect;
- (CGRect)imageRectForContentRect:(CGRect)contentRect;
@end @interface UIButton(UIButtonDeprecated) @property(nonatomic,retain) UIFont *font NS_DEPRECATED_IOS(2_0, 3_0);//通过这个可以给title设置字体
@property(nonatomic) NSLineBreakMode lineBreakMode NS_DEPRECATED_IOS(2_0, 3_0);// 换行模式
@property(nonatomic) CGSize titleShadowOffset NS_DEPRECATED_IOS(2_0, 3_0); // title的偏移量 @end

UIKit之浅析UIButton的更多相关文章

  1. UIkit框架之UIbutton的使用

    1.UIbutton的继承关系:UIcontroller:UIview:UIresponder:NSObject: 2.添加按钮的步骤: (1)创建按钮的时候首先设置类型 (2)添加标题或者图片,设置 ...

  2. UIButton利用分类扩展方法(封装)

    UIButton+BackgroundColor.h #import <UIKit/UIKit.h> @interface UIButton (BackgroundColor) - (vo ...

  3. iOS学习——UI基础UIButton(七)

    前面写了UIWindow.UIViewController,那些都是一些框架,框架需要填充上具体的view才能组成我们的应用,移动应用开发中UI占了很大一部分,最基础的UI实现是使用系统提供的各种控件 ...

  4. UI基础UIButton

    UI基础UIButton 前面写了UIWindow.UIViewController,那些都是一些框架,框架需要填充上具体的view才能组成我们的应用,移动应用开发中UI占了很大一部分,最基础的UI实 ...

  5. iOS:UIButton扩大按钮的响应区域

    一.介绍 在开发中有时会遇见设计图里按钮设计的特别小,这时会用到手动扩大UIButton的响应范围 二.方式 下面有两个解决办法: 第一种方法:创建一个类目:UIButton+EnlargeTouch ...

  6. Swift重写UIButton的图片和标题的位置

    import UIKit class ResetBtn: UIButton { let IMAGE_RATIO :CGFloat = 0.7 // 图片占整个按钮高度的比例 let TITLE_FON ...

  7. iOS之UIButton扩大按钮的响应区域

    在开发中有时会遇见设计图里按钮设计的特别小,这时会用到手动扩大UIButton的响应范围,下面有两个解决办法: 第一种方法:创建一个类目:UIButton+EnlargeTouchArea .h文件 ...

  8. iOS学习笔记(七)——UI基础UIButton

    前面写了UIWindow.UIViewController,那些都是一些框架,框架需要填充上具体的view才能组成我们的应用,移动应用开发中UI占了很大一部分,最基础的UI实现是使用系统提供的各种控件 ...

  9. UIButton 加载网络图片

    以后就可以 用这个分类   UIButton轻松加载网络图片了, UIButton+WebCache.h #import <UIKit/UIKit.h> @interface UIButt ...

随机推荐

  1. oracle系统参数修改

    create pfile='/home/oracle/sss.ora' from spfile; create spfile from pfile='/home/oracle/sss.ora'; al ...

  2. getgrgid()函数

    getgrgid(从组文件中取得指定gid 的数据)相关函数 fgetgrent,getgrent,getgrnam表头文件 #include<grp.h>#include<sys/ ...

  3. linux下socket编程-UDP

    下面是UDP的服务器的代码: /* server.c */ #include <stdio.h> #include <string.h> #include <netine ...

  4. android 应用开发对大图片的处理

    一,下载 android下载大图片(例如微博长图片)会出现OOM down掉问题 解决这个问题的办法是下载图片时先得到图片的宽度和高度,如果超出规定限制则对图片进行缩放 关键参数 1. BitmapF ...

  5. 用正则表达式抓取网页中的ul 和 li标签中最终的值!

                获取你要抓取的页面 const string URL = "http://www.hn3ddf.gov.cn/price/GetList.html?pageno=1& ...

  6. logstorm

    http://blog.itpub.net/15480802/viewspace-688859/ http://www.csdn.net/article/2014-09-04/2821558

  7. Qt 中程序自动重启

    参照至 dbzhang老师的博文,记录于此....... 要想理解重启,先得看看Qt程序怎么退出! 1.退出 int main(int argc, char** argv) { QApplicatio ...

  8. 用gdb调试程序笔记: 以段错误(Segmental fault)为例

    用gdb调试程序笔记: 以段错误(Segmental fault)为例[转] 1.背景介绍2.程序中常见的bug分类3.程序调试器(如gdb)有什么用4.段错误(Segmental fault)介绍5 ...

  9. JProfiler解决Java服务器的性能跟踪

    转自:http://www.blogjava.net/anymobile/articles/28248.html

  10. MAX Average Problem(斜率优化dp)

    MAX Average Problem Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Othe ...