码迷,mamicode.com
首页 > 其他好文 > 详细

UIView九宫格

时间:2015-02-04 18:19:02      阅读:190      评论:0      收藏:0      [点我收藏+]

标签:

// 九宫格

 

   技术分享

 

 

 

 

#import "ViewController.h"

@interface ViewController ()

@property (nonatomic ,strong) NSArray *apps;

@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    // 1.总列数
    int totalColums = 3 ;
    
    // 2.应用的宽度高度
    CGFloat appW = 85 ;
    CGFloat appH = 85 ;
    
    // 3.间隙  = (view宽度 - (列数*宽度)) / (总列数+1)
    CGFloat margin = (self.view.frame.size.width - totalColums *appW)/(totalColums +1);
    
    // 4.根据应用个数创建对应的框框
    for (int index =0; index<self.apps.count; index++) {

        // 4.1 创建格子
        UIView *appView = [[UIView alloc ]init ];
        // 4.2 设置格子的颜色
        appView.backgroundColor = [UIColor redColor];
        
        // 计算行号和列号
        int row = index / totalColums;
        int col = index % totalColums;
        
        // 计算格子的位置
        CGFloat appX = margin +col *(appW+margin);
        CGFloat appY = 30 +row*(appH+margin);
        
        appView.frame = CGRectMake(appX, appY, appW, appH);
        
        // 加载
        
        [self.view addSubview:appView];
    }
    
}

- (NSArray *)apps{
    if(_apps == nil){
        
        // 1.获取plist的全路径
        NSString *path = [[ NSBundle mainBundle] pathForResource:@"app.plist" ofType:nil];
       
        // 2. 加载数组
        
        _apps = [NSArray arrayWithContentsOfFile:path];
    }
    return _apps;
}

 

UIView九宫格

标签:

原文地址:http://www.cnblogs.com/jerry1209/p/4272851.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!