zoukankan      html  css  js  c++  java
  • xcode UIButton创建、监听按钮点击、自定义按钮 、状态 、内边距

    代码创建

    //创建UIButton

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

            //设置UIControlStateNormal状态下的文字颜色

            [btnType setTitleColor:[UIColor blackColor] forState:UIControlStateNormal];

            //设置字体大小

            btnType.titleLabel.font=[UIFont systemFontOfSize:9.0];

            //设置边框的宽度

            btnType.layer.borderWidth=1;

            //设置边框的颜色

            btnType.layer.borderColor=[[UIColor lightGrayColor]CGColor];

            //设置UIControlStateNormal的文字

            [btnType setTitle:@"按钮设置名字" forState:UIControlStateNormal];

            //设置UIControlStateNormal的图片

            [btnType setImage:[UIImage imageNamed:@"获取Assets.xcassets图片名称"] forState:UIControlStateNormal];

            //设置UIControlStateNormal背景图片

            [btnType setBackgroundImage:[UIImage imageNamed:@"获取Assets.xcassets图片名称"] forState:UIControlStateNormal];

            //设置失效状态

            btnType.enabled=NO;

    监听按钮点击

    //只要按钮触发了UIControlEventTouchUpInside事件,就调用self对象buttonClick方法

    [btn addTarget:self action:@selector(buttonClick) forCOntrolEvents:UIControlEventTouchUpInside];

    自定义按钮

    -(CGRect)titleRectForContentRect:(CGRect)contentRect{

            // 返回文字的frame   

     } 

    -  (CGRect)imageRectForContentRect:(CGRect)contentRect{

            // 返回图片的frame

     }

    按钮显示的状态

    设置不能点击 enabled 等于NO

    adjustsImageWhenDisabled 等于NO  在Disabled下要不要调整显示的图片

    adjustsImageWhenHighlighted 高亮下不要调整图片

    按钮内边距

    通过代码设置   contentEdgeINsets =   uiedgeInsetsMake 设置内边距

     contentEdgeInsets=UIEdgeInsetsMake(<#CGFloat top#>, <#CGFloat left#>, <#CGFloat bottom#>, <#CGFloat right#>);

    设置文字  titleEdgeInsets=uiedgeInsetsMake 设置文字的内边距

    titleEdgeInsets=UIEdgeInsetsMake(<#CGFloat top#>, <#CGFloat left#>, <#CGFloat bottom#>, <#CGFloat right#>);

    设置图片 imageEdgeInsets=uiedgeInsetsMake 设置图片的内边距

    imageEdgeInsetss=UIEdgeInsetsMake(<#CGFloat top#>, <#CGFloat left#>, <#CGFloat bottom#>, <#CGFloat right#>);

    微小调整使用内边距     复杂的话使用自定义按钮

  • 相关阅读:
    检查点(Checkpoint)过程如何处理未提交的事务
    SQL Server代理(4/12):配置数据库邮件
    SQL Server代理(3/12):代理警报和操作员
    hash_multimap
    hash_map
    hash_multiset
    hash_set
    hash 函数
    pair
    multimap
  • 原文地址:https://www.cnblogs.com/fleas/p/5565117.html
Copyright © 2011-2022 走看看