//
// LiuJieViewController.m
// 02-通过代码创建按钮
//
// Created by Mac on 15-1-29.
// Copyright (c) 2015年 vxinyou. All rights reserved.
//
#import "LiuJieViewController.h"
@interface LiuJieViewController ()
@end
@implementation LiuJieViewController
- (void)viewDidLoad
{
[super viewDidLoad];
//1,创建按钮
UIButton *btn = [[UIButton alloc] init];
//2,添加按钮
[self.view addSubview:btn];
//3,设置frame,如果不设置frame是不会显示的
btn.frame = CGRectMake(50, 50, 100, 100);
//4,设置背景图片
// 通过文件名加载图片(凡是png图片,都不用加扩展名)
UIImage *normal = [UIImage imageNamed:@"btn_01"];
// 设置普通状态下的背景图片
[btn setBackgroundImage:normal forState:UIControlStateNormal];
// 设置高亮状态下的背景图片
[btn setBackgroundImage:[UIImage imageNamed:@"btn_02"] forState:UIControlStateHighlighted];
//5,设置文字
[btn setTitle:@"点我啊" forState:UIControlStateNormal];
[btn setTitle:@"摸我干啥" forState:UIControlStateHighlighted];
//6,设置文字颜色(默认情况下文字都是白色)
[btn setTitleColor:[UIColor redColor] forState:UIControlStateNormal];
[btn setTitleColor:[UIColor blueColor] forState:UIControlStateHighlighted];
//7,监听按钮的点击事件
// addTarge后面的参数:表示哪个对象来监听按钮的点击事件,就是指定一个监听器,很明显当前所在的类就是监听器。
// action后面的参数:表示按钮被点击后要执行监听器的哪个方法,如果该方法有参数,只需加一个冒号,无需把btn传进去。
// forControlEvent后面的参数:表示监听的是按钮的什么事件,是单击双击还是长按
[btn addTarget:self action:@selector(btnClick:) forControlEvents:UIControlEventTouchUpInside];
// 这种方式创建的按钮直接使用了系统的样式
// 无需我们设置其frame也可以显示,但是会默认显示在左上角
UIButton *btn2 = [UIButton buttonWithType:UIButtonTypeContactAdd];
[btn2 addTarget:self action:@selector(btnClick:) forControlEvents:UIControlEventTouchUpInside];
// 默认显示在左上角,我们可以修改其显示的位置
btn2.center = CGPointMake(250, 250);
[self.view addSubview:btn2];
}
- (void)btnClick:(UIButton *)btn{
NSLog(@"btnClick----%@", btn);
}
- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
@end
ios-day02-02(通过代码创建按钮)
最新推荐文章于 2025-06-24 09:08:14 发布