首页 > 代码库 > UIButton

UIButton

1.  创建按钮

#pragma mark 创建橙色按钮- (void) createOrangeBtn{    // 创建按钮    //[[UIButton alloc] initWithFrame:<#(CGRect)#>];    UIButton *btn = [[UIButton alloc] init];        // 绑定一个tag    btn.tag = kOrangeTag;        // 设置按钮的frame(位置和尺寸)    btn.frame = CGRectMake(100, 100, 100, 100);        // 设置背景颜色(橙色)    btn.backgroundColor = [UIColor orangeColor];        // 设置按钮文字(普通状态)    [btn setTitle:@"我是按钮" forState:UIControlStateNormal];        // (高亮状态:用户的手指按下去了)    [btn setTitle:@"被人摸了" forState:UIControlStateHighlighted];        // 设置按钮文字颜色    [btn setTitleColor:[UIColor redColor] forState:UIControlStateHighlighted];        [self.view addSubview:btn];}

2.  按钮设置图片

    // 设置按钮的普通背景图片    // 根据图片名称去项目文件系统中加载图片对象    UIImage *normalImage = [UIImage imageNamed:normal];    [btn setBackgroundImage:normalImage forState:UIControlStateNormal];        // 设置按钮的高亮图片    UIImage *highImage = [UIImage imageNamed:highlighted];    [btn setBackgroundImage:highImage forState:UIControlStateHighlighted];

 

3.  按钮动画

    // 取出橙色按钮    UIView *orangeBtn = [self.view viewWithTag:kOrangeTag];    // 获得按钮的中点    CGPoint center = orangeBtn.center;        // 每次移动的距离    static CGFloat delta = 50;        // 根据按钮的类型来修改中点的值    switch (btn.tag) {        case kUp: //            center.y -= delta;            break;                    case kDown: //            center.y += delta;            break;                    case kLeftTag: //            center.x -= delta;            break;                    case kRightTag: //            center.x += delta;            break;    }        // 即将开始一个动画    [UIView beginAnimations:nil context:nil];        // 设置动画持续时间    [UIView setAnimationDuration:.3];        // 重新赋值按钮的中点    orangeBtn.center = center;        // 提交动画(正式开始执行动画)    [UIView commitAnimations];