你好,歡迎來到IOS教程網

 Ios教程網 >> IOS使用技巧 >> IOS技巧綜合 >> 九宮格的算法

九宮格的算法

編輯:IOS技巧綜合
[摘要]本文是對九宮格的算法的講解,對學習IOS蘋果軟件開發有所幫助,與大家分享。

## 九宮格計算思路
- 利用控件的索引index計算出控件所在的行號和列號
- 利用列號計算控件的x值
- 利用行號計算控件的y值

## HUD
- 其他說法:指示器、遮蓋、蒙板
- 半透明HUD的做法
- 背景色設置為半透明顏色

## 定時任務
- 方法1:performSelector

```objc
// 1.5s後自動調用self的hideHUD方法
[self performSelector:@selector(hideHUD) withObject:nil afterDelay:1.5];
```
- 方法2:GCD

```objc
dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(1.5 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
// 1.5s後自動執行這個block裡面的代碼
self.hud.alpha = 0.0;
});
```
- 方法3:NSTimer

```objc
// 1.5s後自動調用self的hideHUD方法
[NSTimer scheduledTimerWithTimeInterval:1.5 target:self selector:@selector(hideHUD) userInfo:nil repeats:NO];
// repeats如果為YES,意味著每隔1.5s都會調用一次self的hidHUD方法
```

## 常見問題
- 項目裡面的某個.m文件無法使用
- 檢查:Build Phases -> Compile Sources
- 項目裡面的某個資源文件(比如plist、音頻等)無法使用
- 檢查:Build Phases -> Copy Bundle Resources

## 模型
- 什麼是模型?
- 專門用來存放數據的對象
- 一般都是一些直接繼承自NSObject的純對象
- 內部會提供一些屬性來存放數據

## 一個控件看不見有哪些可能?
- 寬度或者高度其實為0
- 位置不對(比如是個負數或者超大的數,已經超出屏幕)
- hidden == YES
- alpha <= 0.01
- 沒有設置背景色、沒有設置內容
- 可能是文字顏色和背景色一樣

  1. 上一頁:
  2. 下一頁:
蘋果刷機越獄教程| IOS教程問題解答| IOS技巧綜合| IOS7技巧| IOS8教程
Copyright © Ios教程網 All Rights Reserved