zoukankan      html  css  js  c++  java
  • UIButton 的简单运用

    //简单制作一个关灯游戏关灯游戏

    //点击某一个灯,它,包括它四周的灯一起变化,关了的亮,亮的关

    //建一个分类,它继承与UIView

    #import <UIKit/UIKit.h>

    //声明一个方法

    @interface UIView (Change)

    -(void)change;

    @end

    //实现这个方法

    #import "UIView+Change.h"

    @implementation UIView (Change)

    -(void)change

    {

    //红的变黑,黑的变红

        if (self.backgroundColor==[UIColor redColor]) {

            self.backgroundColor=[UIColor blackColor];

        }

        else

        {

            self.backgroundColor=[UIColor redColor];

        }

    }

    @end

    #import <UIKit/UIKit.h>

    #import "UIView+Change.h"

    @interface ViewController : UIViewController

    //定义一个按钮控件的属性

    @property (strong,nonatomic) UIButton *button;

    //声明一个判断的方法

     -(void)chose:(UIButton *)button;

    @end

    #import "ViewController.h"

    @interface ViewController ()

    @end

    @implementation ViewController

    - (void)viewDidLoad {

        [super viewDidLoad];

    //循环产生按钮视图 j=5,代表横排五个,i=9 代表竖排9个

        for (int i=1; i<=9; i++)

        {

            for (int j=1; j<=5; j++)

            {

            //Button的初始化

                self.button = [UIButton buttonWithType:UIButtonTypeCustom];

                self.button=[[UIButton alloc]initWithFrame:CGRectMake(19*j+(j-1)*60, 19.6*i+(i-1)*60, 60, 60)];

             //将Button创建为圆角矩形  

                [self.button.layer setCornerRadius:10.0];

            //给Button上初始颜色为红色,当成灯亮

                self.button.backgroundColor=[UIColor redColor];

                //给创建的每一个Button按钮视图赋一个初始tag值

                self.button.tag=(i-1)*5+j;

                     self.button.selected=YES;

                     [self.view addSubview:self.button];

    //当触发事件UIControlEventTouchDown发生时,调用方法chose:

                [self.button addTarget:self action:@selector(chose:) forControlEvents:UIControlEventTouchDown];

            }

        }

    }

    //判断方法

    -(void)chose:(UIButton *)button

    {

        self.button=button;

    //将Button的tag值转化为int类型赋给num

        int num=(int)self.button.tag;

    //第num个Button变色

        [[self.view viewWithTag:num] change];

    //判断第num个Button周围有没有其他的Button,有调用change方法,变色

        if ((num-1)>0&&((num%5)!=1)) {

            [[self.view viewWithTag:(num-1)] change];

        }

        if ((num-5)>0) {

            [[self.view viewWithTag:(num-5)] change];

        }

        if ((num+1)<=45&&((num%5)!=0)) {

            [[self.view viewWithTag:(num+1)] change];

        }

        if ((num+5)<=45) {

            [[self.view viewWithTag:(num+5)] change];

        }

    }

    - (void)didReceiveMemoryWarning {

        [super didReceiveMemoryWarning];

        // Dispose of any resources that can be recreated.

    }

    @end

  • 相关阅读:
    强连通分量入度和出度
    Tarjan 强连通分量
    强连通是真的强~
    Yii2.0 RESTful API 基础配置教程
    微信小程序循环数组展示数据点击当前改变当前按钮状态
    初入博客园
    博客总目录
    当我们在谈论kmeans(4)
    当我们在谈论kmeans(5)
    当我们在谈论kmeans(3)
  • 原文地址:https://www.cnblogs.com/Always-LuoHan/p/5263886.html
Copyright © 2011-2022 走看看