最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

iOS實現(xiàn)拼圖小游戲

 更新時間:2022年03月24日 10:57:30   作者:疾風哥哥  
這篇文章主要為大家詳細介紹了iOS實現(xiàn)拼圖小游戲,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了iOS實現(xiàn)拼圖小游戲的具體代碼,供大家參考,具體內容如下

首先找到這8張圖片,還需要一張空白的圖片,自己隨便剪一張吧。

定義三個屬性:button可變數組,圖片可變數組,正確順序的圖片數組。

@property(retain, nonatomic)NSMutableArray *buttonArray;
@property(retain, nonatomic)NSMutableArray *a;
@property(retain, nonatomic)NSArray ? ? ? ?*aa;

鋪好拼圖界面

//圖片數組a,用來儲存每個圖片名稱,并且用于后來的打亂
self.a = [NSMutableArray arrayWithObjects:@"1.jpg",@"2.jpg",@"3.jpg",@"4.jpg",@"5.jpg",@"6.jpg",@"7.jpg",@"8.jpg",@"9.jpg", nil];
//備份一個正確順序的圖片數組,用于判斷游戲是否過關
self.aa = [NSArray arrayWithArray:self.a];
//重新開始按鈕
UIButton *star = [[UIButton alloc] initWithFrame:CGRectMake(120, 400, 100, 40)];
[star setTitle:@"重新開始" forState:UIControlStateNormal];
[star setTitleColor:[UIColor blueColor] forState:UIControlStateNormal];
star.layer.cornerRadius = 6.6f;
star.layer.backgroundColor = [[UIColor colorWithRed:0.922 green:0.925 blue:0.929 alpha:1]CGColor];
//添加點擊事件
[star addTarget:self action:@selector(kaishi) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:star];
[star release];

//鋪出9個button
? ? self.buttonArray = [NSMutableArray array];
? ? NSInteger count = 0;
? ? NSInteger wight = 351 / 3;
? ? NSInteger higth = 351 / 3;
? ? for (int i = 0; i < 3; i++) {
? ? ? ? for (int j = 0; j < 3; j++) {
? ? ? ? ? ? UIButton *button = [[UIButton alloc] initWithFrame:CGRectMake(j * (wight+2) + 10, i * (higth + 2) + 20, wight, higth)];
? ? ? ? ? ? button.backgroundColor = [UIColor blackColor];
? ? ? ? ? ? //給每個button上圖片
? ? ? ? ? ? [button setImage:[UIImage imageNamed:self.a[count]] forState:UIControlStateNormal];
? ? ? ? ? ? [self.view addSubview:button];
? ? ? ? ? ? //給每個button添加點擊事件
? ? ? ? ? ? [button addTarget:self action:@selector(change:) forControlEvents:UIControlEventTouchUpInside];
? ? ? ? ? ? //把button放入數組
? ? ? ? ? ? [self.buttonArray addObject:button];
? ? ? ? ? ? button.tag = count;
? ? ? ? ? ? [button release];
? ? ? ? ? ? count++;
? ? ? ? }
}

實現(xiàn)button的點擊事件

- (void)change:(UIButton *)sender{
? ? NSInteger flag = 0;
? ? int p = 0;
? ? //“9.jpg”是空白的那個,打亂后,得在圖片數組里找到所在下標,用flag存在來
? ? for (NSInteger i = 0; i < 9; i++) {
? ? ? ? if ([self.a[i] isEqualToString:@"9.jpg"]) {
? ? ? ? ? ? flag = i;
? ? ? ? }
? ? }

? ? //如果所點擊的button的上下左右其中有一個是空白圖片的話,就跟空白圖片交換在圖片數組的位置
? ? if (sender.tag - flag == 3 || sender.tag - flag == -3 || sender.tag - flag == 1 || sender.tag - flag == -1) {
? ? ? ? [self.a exchangeObjectAtIndex:flag withObjectAtIndex:sender.tag];
? ? }
? ? //重新給每個button上圖片
? ? for (int i = 0; i < 9; i++) {
? ? ? ? [self.buttonArray[i] setImage:[UIImage imageNamed:self.a[i]] forState:UIControlStateNormal];
? ? }

? ? //判斷是否拼圖成功,每對應了一張圖片p就加一,如果p最后等于9說明游戲通關
? ? for (int i = 0; i < 9 ; i++) {
? ? ? ? if ([self.a[i] isEqualToString:self.aa[i]]) {
? ? ? ? ? ? p++;
? ? ? ? }else{
? ? ? ? ? ? break;
? ? ? ? }
? ? }
? ? if (p == 9) {
? ? ? ? NSLog(@"%d",p);
? ? ? ? UIAlertView *a = [[UIAlertView alloc] initWithTitle:@"恭喜!" message:@"已通關" delegate:self cancelButtonTitle:@"確定" otherButtonTitles:nil];
? ? ? ? [a show];
? ? ? ? [a release];
? ? }
}

打亂所有圖片

- (void)kaishi{
//產生0到8兩個隨機數,通過下標交換圖片數組中的兩張圖片
? ? for (int i = 0; i < 10; i++) {
? ? ? ? [self.a exchangeObjectAtIndex:(arc4random() % 9)
? ? ? ? ? ? ? ? ? ? withObjectAtIndex:(arc4random() % 9)];
? ? }
? ? //給每個button上圖片
? ? for (int i = 0; i < 9; i++) {
? ? ? ? [self.buttonArray[i] setImage:[UIImage imageNamed:self.a[i]] forState:UIControlStateNormal];
? ? }
}

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

您可能感興趣的文章:

相關文章

  • IOS中的七種手勢小結

    IOS中的七種手勢小結

    本文給大家總結了ios中的七種手勢,手勢在開發(fā)在開發(fā)中經常會用到,今天小編通過本文給大家詳細介紹下,需要的朋友參考下
    2016-11-11
  • iOS中WKWebView白屏問題的分析與解決

    iOS中WKWebView白屏問題的分析與解決

    最近在工作中遇到了WKWebView白屏的問題,所以這篇文章主要給大家介紹了關于iOS中WKWebView白屏問題的分析與解決方法,文中通過示例代碼介紹的非常詳細,對同樣遇到這個問題的朋友具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧。
    2017-10-10
  • iOS實用教程之Https雙向認證詳解

    iOS實用教程之Https雙向認證詳解

    這篇文章主要給大家介紹了關于iOS中Https雙向認證的相關資料,文中介紹的非常詳細,對大家具有一定的參考學習價值,需要的朋友可以參考借鑒,下面來一起看看吧。
    2017-05-05
  • iOS中關于Cookie驗證登錄狀態(tài)

    iOS中關于Cookie驗證登錄狀態(tài)

    這篇文章主要介紹了iOS中關于Cookie驗證登錄狀態(tài)的相關資料,需要的朋友可以參考下
    2017-05-05
  • ios開發(fā)Flutter構建todo?list應用

    ios開發(fā)Flutter構建todo?list應用

    這篇文章主要為大家介紹了ios開發(fā)Flutter構建todo?list應用實例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-09-09
  • IOS打開系統(tǒng)相機的閃光燈

    IOS打開系統(tǒng)相機的閃光燈

    今天給大家分享一下如何調用iphone的拍照功能和打開閃光燈,有些代碼我也不太理解,很多是在網上借鑒其他人的。
    2015-05-05
  • 詳解iOS獲取通訊錄的4種方式

    詳解iOS獲取通訊錄的4種方式

    這篇文章主要為大家詳細介紹了iOS獲取通訊錄的4種方式,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-10-10
  • iOS開發(fā)刪除storyboard步驟詳解

    iOS開發(fā)刪除storyboard步驟詳解

    這篇文章主要為大家介紹了iOS系列學習之刪除storyboard步驟詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-11-11
  • 解決iOS UITextField 編輯時文本偏移問題

    解決iOS UITextField 編輯時文本偏移問題

    這篇文章主要介紹了解決iOS UITextField 編輯時文本偏移問題,需要的朋友可以參考下
    2017-05-05
  • iOS仿抖音視頻加載動畫效果的實現(xiàn)方法

    iOS仿抖音視頻加載動畫效果的實現(xiàn)方法

    這篇文章主要給大家介紹了關于iOS視頻加載動畫效果的實現(xiàn)方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,下面隨著小編來一起學習學習吧
    2018-11-11

最新評論

邓州市| 库伦旗| 威海市| 遂川县| 丰顺县| 平果县| 扬中市| 东港市| 西青区| 章丘市| 北宁市| 怀远县| 深圳市| 焦作市| 泸西县| 鹤庆县| 双辽市| 海兴县| 云安县| 福州市| 台北市| 敦煌市| 沅江市| 青冈县| 建昌县| 万荣县| 辽阳县| 台中县| 广宁县| 汉寿县| 襄垣县| 永修县| 正宁县| 梁山县| 嵊州市| 蓬安县| 五家渠市| 同心县| 香格里拉县| 芦溪县| 图片|