UIButton按钮

作者: 每日总结 | 来源:发表于2016-03-12 15:06 被阅读49次
    UIButton *button = [UIButton buttonWithType:UIButtonTypeSystem];
    //buttonWithType后面填的是button的样式
    //UIButtonTypeSystem的时候如果给button添加前景图片只能显示出一个蓝色的轮廓;
    //建议只要给UIButton设置自定义图片,就用Custom
    //想要添加前景图片需要改成UIButtonTypeCustom;
    
    button.frame = CGRectMake(100,100,100,100);
    //设置标题
    [button setTitle:@"登陆" forState:UIControlStateNormal];
    
    • 这里的State填的是当button这个状态的时候显示这样的标题;
      • Normal状态就是没有按的时候的状态
      • HighLighted状态就是按住不放的时候的状态
      • disable状态就是按钮失效或者不能按的时候的状态
      • 可以给不同的状态设定不同的图片,标题等
    //取标题
    NSString *title = [button titleForState:UIControlStateNormal];
    //设置标题字体的颜色
    [button setTitleColor:[UIColor redColor] forState:UIControlStateNormal];
    //背景图片
    [button setBackgroundImage:[UIImage imageNamed:@"XXX.jpg"] forState:UIControlStateNormal];
    //设置背景图片时上面的Type设为System就行了;
    
    //设置前景图片
    [button setImage:[UIImage imageNamed:@"XXX.jpg"] forState:UIControlStateNormal];
    //设置前景图片时上面的Type要用Custem
    
    //取图片
    UIImage *backImg = [button backgroundImageForState:UIControlStateNormal];
    UIImage *img = [button imageForState:UIControlStateNormal];
    [self.window addSubview:button];
    //button不用release,因为一般都是用便利构造器构建
    
    //点击事件
    [button addTarget:self action:@selector(buttonAction:) forControlEvents:UIControlEventTouchUpInside];
    //forControlEvents后填的是点击事件触发的时机;是一点下就触发,还是点下松手之后在触发
    

    自定义button

    想要自定义Button中的图片和标题的位置有两种方法
    1.写一个UIButton的子类,并实现两个方法

    //此方法改变的是标题的位置大小,返回标题的frame,
    //此处contentRect就是button的frame,下同
    - (CGRect)titleRectForContentRect:(CGRect)contentRect
    //此方法改变的是图片的位置大小,返回图片的frame
    - (CGRect)imageRectForContentRect:(CGRect)contentRect
    

    2.设置UIButton相应的EdgeInsets属性

    button.titleEdgeInsets = UIEdgeInsetsMake(top,left,bottom,right);
    button.imageEdgeInsets = UIEdgeInsetsMake(top,left,bottom,right);
    //这两个属性设置的是图片和标题距离边框的距离,当只有图片或标题时,
    //设置的是距离button边框的距离,
    //同时存在时,设置的图片的上左下是距button边框的距离,右边是距离title的距离;
    //title上下右是距button边框的距离,左边是距离image的距离
    

    相关文章

      网友评论

        本文标题:UIButton按钮

        本文链接:https://www.haomeiwen.com/subject/dmktlttx.html