• UIButton


      //UIButton - 按钮,可以用来与用户进行交互

        //UIButton -> UIControl -> UIView

        

        //button一般情况下不使用实例方法创建

        /*

         UIButtonTypeCustom                             // 自定义按钮类型,也是系统默认值(一般都会使用这个)

         UIButtonTypeSystem              // 系统样式

      一般很少使用以下样式,因为项目的按钮我们一般都是直接加个背景图片

         UIButtonTypeDetailDisclosure       //样式如图

         UIButtonTypeInfoLight            //样式如图

         UIButtonTypeInfoDark            //样式如图

         UIButtonTypeContactAdd          // 显示一张“”的图片

         UIButtonTypeRoundedRect = UIButtonTypeSystem   //跟UIButtonTypeSystem一样的

         */

        UIButton *btn = [UIButton buttonWithType:UIButtonTypeCustom];

      

      //设置按钮的位置与大小

        btn.frame = CGRectMake(100, 100, 100, 50);

      

     //设置按钮的文字,在什么状态下显示

        /*按钮的状态

         UIControlStateNormal                   // 常规下的状态

         UIControlStateHighlighted                          // 高亮时的状态

         UIControlStateDisabled                            // 按钮不可用时的状态

         UIControlStateSelected                       // 选中时的状态

      这些状态要配合button的两个属性一起使用,[注意]这两个属性很重要,因为后期有很多动态操作都需要通过这两个属性来判断

      [注意]使用这两个属性时要注意逻辑性跟实际情况,比如你把按钮btn.enabled设置为NO,又把btn.selected设置为YES,那就矛盾了,因为你把它设置为不    可按了,那又怎么选中呢

      btn.enabled    //是否可按,YES为可按,NO为不可按

          btn.selected //是否为选中状态,YES为选中状态,NO为美选中状态

      

         */

        //普通下的状态

        [btn setTitle:@"按钮" forState:UIControlStateNormal];

        //高亮时的状态(点击不放时的状态)

        [btn setTitle:@"已点击" forState:UIControlStateHighlighted];

        //设置字体的颜色

        [btn setTitleColor:[UIColor yellowColor] forState:UIControlStateNormal];

        //点击不放时的颜色

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

        //修改字体大小

        btn.titleLabel.font = [UIFont boldSystemFontOfSize:16];

        //设置按钮的背景颜色

        btn.backgroundColor = [UIColor redColor];

        //设置按钮文字的阴影

        //[btn setTitleShadowColor:[UIColor greenColor] forState:UIControlStateNormal];

        //设置按钮文字阴影的偏移量

        //[btn setTitleShadowOffset:CGSizeMake(3, 3)];

       

        //修改文字偏移量

        //创建一个结构体

      //UIEdgeInsets set = UIEdgeInsetsMake(20, 0, 0, 0);

        //[btn setTitleEdgeInsets:set];

        

        //设置按钮的背景图片

        //使用背景图片加载的方式会将图片拉伸到整个按钮的宽高,缺点就是会导致图片变形

        //imageNamed:如果没有添加图片的后缀,会自动在图片名的后面加.png,如果使用的是.jpg图片,需要手动添加.jpg

        UIImage *bgrdImg = [UIImage imageNamed:@"account_candou"];

        [btn setBackgroundImage:bgrdImg forState:UIControlStateNormal];

        

        //设置按钮的图片

        //图片不会被拉升 [注意]与上面背景图片的区别

        [btn setImage:[UIImage imageNamed:@"account_collect"] forState:UIControlStateNormal];

        //设置图片的偏移量

        [btn setImageEdgeInsets:UIEdgeInsetsMake(0, 0, 0, -30)];

     

       // 添加一个事件

      /*

         UIControlEventyou很多种类型,大家自己通过command+点击这个方法就可以看到多种类型了,这里就不多做讲诉

         */

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

     

      // 为按钮添加标签

        // tag是UIView的属性,[注意]标签值一般要大,避免重复,还有不要为0,因为系统默认self.window的标签为0

        _btn.tag = 5678;

      

     

     

    //***************分割线*******************

    //该函数就是上面按钮的响应事件,这里函数的参数就是我们按下的那个按钮,通过该值我们可以获得很多关于按钮的信息

    /*

    sender.currentTitle;    //按钮的文字

    sender.currentTitleColor;   //按钮的文字颜色

    sender.currentImage    //按钮上的图片

    sender.currentBackgroundImage  //按钮上的背景图片

    还有很多,大家可以自己到Xcode自带的文件看下

    */

    -(void)btnAction:(UIButton *)sender

    {

        sender.enabled = NO;

    }

       

     

    新手练习题:

    1.微信题

    就是模仿微信,点击微信,那么其他三个就变成灰色,且微信就不可再点击了,可以通过点击改变上面的背景色

    四个按钮

  • 相关阅读:
    20175325 实现mypwd(选做,加分)
    A公司 推荐算法大赛 总结
    CSLM 配置粗解
    iOS开发之百度地图导航
    iOS开发之百度地图的集成——地图标注&POI检索
    iOS开发之集成百度地图踩过的那些坑(基于 Xcode7.0/iOS9.2)
    Swift开发第二篇——extension及fatalError
    iOS开发之AFN的基本使用
    iOS开发之多线程技术——NSOperation篇
    iOS开发之多线程技术——GCD篇
  • 原文地址:https://www.cnblogs.com/Mr-Lin/p/5093306.html
Copyright © 2020-2023  润新知