UI基础(二)—— 应用管理

先介绍几个九宫格小算法算法

  • 计算行索引
    NSInteger rowIndex = i / kColumn;
  • 计算列索引
    NSInteger columnIndex = i % kColumn;
  • 根据索引计算x和y值
    x:
    CGFloat X = columnIndex * (yellowViewWidth + margin) + margin;
    y:
    CGFloat Y = rowIndex * (yellowViewHeight + margin) + margin;

一些小的基础知识

  • 设置button的属性
    设置backgroundImage, image, title , 一定要分状态设置
    默认
    高亮 --> 按钮被点击的时候, 自动切换到高亮状态
    被选中 --> 设置button的selected 属性为YES
    被禁用 --> 设置button的enabled 设置为 NO的时候为不可用
    Button.titleLabel.font --> 设置button中文本的字体大小�

  • 设置字体样式
    + (UIFont *)systemFontOfSize:(CGFloat)fontSize; 默认体
    + (UIFont *)boldSystemFontOfSize:(CGFloat)fontSize; 加粗体
    + (UIFont *)italicSystemFontOfSize:(CGFloat)fontSize; 斜体

  • 加载xib
    UIView *yellowView = [[[NSBundle mainBundle] loadNibNamed:@"YellowView" owner:nil options:nil] lastObject];

  • 懒加载数据模板

 - (NSArray *)dataArray {
    if (nil == _dataArray) {
        // 1. 读取文件的路径
        NSString *path = [[NSBundle mainBundle] pathForResource:@"app.plist" ofType:nil];
        
        // 2. 读取文件内容到临时数组
        NSArray *tempArray = [NSArray arrayWithContentsOfFile:path];
        
        // 3. 遍历tempArray数组 把字典转为 appModel对象
        NSMutableArray *muta = [NSMutableArray array];
        
        for (NSDictionary *dict in tempArray) {

            // 通过对象方法实例化 appModel
            AppModel *appModel = [AppModel appModelWithDict:dict];
      
            // 添加到可变数组
            [muta addObject:appModel];
        }
        
        // 4. 把可变数组赋值给  _dataArray
        _dataArray = muta;
        
    }
    return _dataArray;
}

你可能感兴趣的:(UI基础(二)—— 应用管理)