基于oc的不完整对对碰

简介:

//
//  ViewController.m
//  对对碰
//
//  Created by 杨晓鸣 on 16/9/19.
//  Copyright © 2016年 杨晓鸣. All rights reserved.
//

#import "ViewController.h"

@interface ViewController ()

@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.
    NSMutableArray* arrStr = [[NSMutableArray alloc]init];
    
    for (int k = 0; k<18; k++) {
        int random = arc4random()%7+1;
        NSString* strName = [NSString stringWithFormat:@"%d",random];
        
        [arrStr addObject:strName];
        [arrStr addObject:strName];
        
    }
    
    //循环创建36个按钮
    for (int i = 0; i<6; i++) {
        for (int j = 0; j<6; j++)
        {
            UIButton* btn = [UIButton buttonWithType:UIButtonTypeCustom];
            [UIView beginAnimations:nil context:nil];
            btn.frame = CGRectMake(160, 160, 50, 50);
            [UIView setAnimationDuration:2];
            btn.frame = CGRectMake(10+50*j, 40+50*i, 50, 50);
            [UIView commitAnimations];
            
            //产生随机图片
            int indexramdom = arc4random() % arrStr.count;
            //从图像数组中取出文件名
            NSString* strImage = arrStr[indexramdom];
            
            NSInteger tag = [strImage integerValue];
            
            [arrStr removeObjectAtIndex:indexramdom];
            
            UIImage* image = [UIImage imageNamed:strImage];
            [btn setImage:image forState:UIControlStateNormal];
            [btn addTarget:self action:@selector(pressBtn:) forControlEvents:UIControlEventTouchUpInside];
            [self.view addSubview:btn];
            
            //将按钮的标志位赋值
            btn.tag = tag;
        }
    }

}

-(void) pressBtn:(UIButton*) btn
{
    //创建一个静态变量 保存第一次按下的按钮
    static UIButton* btnFirst = nil;
    if (btnFirst == nil) {
        btnFirst = btn;
        //锁定第一个按钮
        btnFirst.enabled = NO;
    }
    else{
        //两个图片相同
        if (btnFirst.tag == btn.tag) {
            btnFirst.hidden = YES;
            btn.hidden = YES;
            btnFirst = nil;
        }
        //按钮图片不相同
        else{
            btnFirst.enabled = YES;
            btnFirst = nil;
        }
    }
}

- (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}


@end

目录
相关文章
|
2月前
|
IDE Java API
Javadoc的讲解使用
本文介绍了Javadoc工具的使用方法和常用标签,通过示例代码展示了如何为Java代码添加文档注释并使用Javadoc命令生成HTML格式的API文档。
17 0
|
Java API
JavaDoc
JavaDoc命令是用来生成自己API文档的,将写好的程序放在生成的文档中 参数信息 @author 作者名 @version 版本号 @since 指明需要最早使用的jdk版本 @param 参数名 @return 返回值情况 @throws 异常抛出情况 package com.wyd.base
JavaDoc
|
Oracle Java 关系型数据库
无法使用 javadoc 等命令?
谈到 Java 就离不开 JRE(Java Runtime Environment),JDK(Java Development Kit) 中包含了 JRE 和 JVM(Java Virtual Machine),所以我们一般直接安装 JDK,安装 JDK 首先肯定是去Oracle官网下载适合自己的开发版本,然后将 JDK 安装到自定义位置。
无法使用 javadoc 等命令?
|
Java Android开发
javaDOC生成
javaDOC生成
108 0
|
编译器 Python
|
编译器 C语言 Swift
|
Java C语言 iOS开发