iOS開發基礎-圖片切換(2)之懶加載

延續:iOS開發基礎-圖片切換(1),對(1)裏面的代碼進行改善。html

在 ViewController 類中添加新的數組屬性:數組

   @property (nonatomic, strong) NSArray *infoArray; //存放圖片信息 瀏覽器

 

  經過 self.infoArray 的 getter 方法對其實現初始化(懶加載),其中代碼中的 _infoArray 不能用 self.infoArray 替換:atom

 1 //infoArray的get方法
 2 - (NSArray *)infoArray {
 3     NSLog(@"須要獲取圖片信息數組");
 4     //只實例化一次
 5     if (_infoArray == nil) {
 6         NSLog(@"實例化數組");
 7         NSDictionary *dict0 = @{@"name":@"beauty0", @"desc":@"美女1號"};
 8         NSDictionary *dict1 = @{@"name":@"beauty1", @"desc":@"美女2號"};
 9         NSDictionary *dict2 = @{@"name":@"beauty2", @"desc":@"美女3號"};
10         NSDictionary *dict3 = @{@"name":@"beauty3", @"desc":@"美女4號"};
11         NSDictionary *dict4 = @{@"name":@"beauty4", @"desc":@"美女5號"};
12         _infoArray = @[dict0, dict1, dict2, dict3, dict4];
13     }
14     return _infoArray;
15 }

  修改 change 方法以下:spa

 1 //視圖內容更新與顯示
 2 - (void)change {
 3     //初始化兩個標籤和一個圖片
 4     self.imageIcon.image = [UIImage imageNamed:self.infoArray[self.i][@"name"]];
 5     self.lastLabel.text = self.infoArray[self.i][@"desc"];
 6     [self.firstLabel setText:[NSString stringWithFormat:@"%d/5", self.i+1]];
 7     
 8     self.leftButton.enabled = (self.i != 0);        //顯示第1張圖片時,左翻按鈕失效
 9     self.rightButton.enabled = (self.i != 4);       //顯示第5張圖片時,右翻按鈕失效
10 }

參考博客:iOS開發UI篇—簡單的瀏覽器查看程序code

示例代碼:http://pan.baidu.com/s/1XFj10orm

相關文章
相關標籤/搜索