UiButton操作

UIButton继承自UIView,虽然界面上的组件都继承自UIView,如果这个组件拥有丰富的事件那么肯定就要继承自UiView的一个子类UIControl,那么像UILable、UIImage这些轻量级组件都没有继承这个类,所以他们拥有的事件操作很少。

初始化一个Button

-(void) initWithRedBlock{

    //初始化块

    UIButton *btn=[[UIButton alloc]init];

    //设置标记

    btn.tag=kRedBtnTag;

    //设置背景色

    btn.backgroundColor=[UIColor redColor];

    //设置坐标和大小

    btn.frame=CGRectMake(10, 20, 100, 100);

    //正常状态显示

    [btn setTitle:@"有本事点我一下" forState:UIControlStateNormal];

    //高亮显示

    [btn setTitle:@"老子点的就是你" forState:UIControlStateHighlighted];

    //高亮时的颜色

    [btn setTitleColor:[UIColor greenColor] forState:UIControlStateHighlighted];

    [self.view addSubview:btn];

}

根据按钮状态绑定背景图片

#pragma mark -初始化

-(void) createBtn:(NSString *)normal highLighted:(NSString *) hilight tag:(NSInteger)tag ponit:(CGPoint) ponit{

        UIButton *btn=[[UIButton alloc]init];

        //设置标记

        btn.tag=tag;

        //设置默认状态下的背景图

        UIImage *normalImage=[UIImage imageNamed:normal];

        UIImage *highLightImage=[UIImage imageNamed:hilight];

        [btn setBackgroundImage:normalImage forState:UIControlStateNormal];

        [btn setBackgroundImage:highLightImage forState:UIControlStateHighlighted];

        //设置坐标

        btn.frame=(CGRect){ponit,highLightImage.size};

        //监听被点击事件

        [btn addTarget:self action:@selector(changeBlock:) forControlEvents:UIControlEventTouchUpInside];

        [self.view addSubview:btn];

}

在主面板加载完毕后初始化按钮

- (void)viewDidLoad

{

    [super viewDidLoad];

    [self initWithRedBlock];

    

    //初始化

    [self createBtn:@"sub_black_prev.png" highLighted:@"sub_blue_prev.png" tag:kLeftBtnTag ponit:CGPointMake(20, 400)];


    

}


UiButton操作

上一篇:设计模式(9) 装饰器模式(DECORATOR)


下一篇:POJ 2486 经典树形dp