九宫格的计算

  • 1.效果图:
1.png
  • 2.计算思路:
2.png
  • 3.代码:
- (void)viewDidLoad {
    [super viewDidLoad];
    self.view.backgroundColor = [UIColor orangeColor];
  
    [self setupButton];
}
- (void)setupButton{
    int totalloc = 4;//一行的列数
    CGFloat appViewW = 80; //按钮的宽度
    CGFloat appViewH = 80; //按钮的高度
   //间隙= (整个屏幕的宽度-总列数*每个的宽度)/(总列数+1)即间隙
    CGFloat margin = (self.view.frame.size.width-appViewW*totalloc)/(totalloc+1);
    
    int count = 4; //总按钮的数量 
    for(int i = 0 ; i<count;i++){
        int row = i/totalloc;//行号
        int loc = i%totalloc;//列号   
        CGFloat appViewX = margin + (margin + appViewW) * loc; //x值由列号决定  
        CGFloat appViewY = margin + (margin + appViewW) * row;  //x值由行号决定

     UIButton *btn =[UIButton buttonWithType:UIButtonTypeCustom];
        btn.frame = CGRectMake(appViewX, appViewY, appViewW, appViewH);
        btn.backgroundColor = [UIColor redColor];
        [self.view addSubview:btn];
    }  
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 九宫格的计算就是要知道行数和列数
    Mr丶炎阅读 605评论 0 0
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,885评论 25 709
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 12,263评论 4 61
  • 月华洗净我的笔 好让我在今晚画出满池的烟雨 阁搂上那个芳芬的角落 为我雕出一朵永不凋谢的荷 没人知道它的存在 它的...
    李秋蓝阅读 272评论 0 4
  • 1:亲爱的叔叔阿姨,小朋友们,大家好,欢迎来到儿童故事会。 哥哥:欢迎来到儿童故事会展现自己, 妈妈:在这里有很多...
    毛毛咻咻萌萌阅读 939评论 0 0