UI九宫格算法
2015-09-18 14:46
459 查看
//循环创建12个UiView for (int i = 0; i < 12; i++) { //设置每个View的大小 CGFloat viewW = 75; CGFloat viewH = 90; //设置距离上面的边距 CGFloat maginTop = 100; //设置每一行有几个单元格 int culumns =3; //设置每个单元格距离x坐标的距离(用自身的宽度 - 每一行有几个单元格)/(单元格的间距)---》》平均每个单元格间距 CGFloat maginX = (self.view.frame.size.width - (culumns*viewW))/(culumns+1); //设置行索引 int cowIdx = i % culumns; //设置列索引 int rowIdx = i / culumns; //x坐标 = x坐标的间距 + 行索引*(每行单元格的大小) CGFloat appX = maginX +cowIdx*(viewW + maginX); //y坐标 = y坐标距离上面的间距 + 列索引*(每行单元格的个数)假设每个单元格的间距和x间距一样 CGFloat appY = maginTop + rowIdx * (viewH + maginX); //设置frame UIView *appView = [[UIView alloc] initWithFrame:CGRectMake(appX, appY, viewW, viewH)]; //设置背景颜色 appView.backgroundColor = [UIColor colorWithRed:arc4random()%256/255.0 green:arc4random()%256/255.0 blue:arc4random()%256/255.0 alpha:1.0]; //把子控件添加到容器内 [self.view addSubview:appView];
相关文章推荐
- ganymed-ssh2-build210.jar 的使用
- java execute、executeQuery和executeUpdate之间的区别
- MyGUI中的内存泄漏
- RLEH7配置samba,提示WARNING: Ignoring invalid value 'share' for parameter 'security'
- 改变UITextField的Placeholder颜色
- 加载SpriteBuilder中的scene为何不能带后缀
- 加载SpriteBuilder中的scene为何不能带后缀
- 加载SpriteBuilder中的scene为何不能带后缀
- UITableview控件基本使用
- mosquitto-1.4.2安装配置教程
- JSONValue.parse出错
- win7 64位系统下运行Jbuilder2006
- iOS学习笔记—— UINavigationController(一)实现页面跳转&添加左右侧按钮
- this compilation unit is not on the build path of a java project
- android ui分析 - 今日头条UI主界面
- 猫学习IOS(十五)UI以前的热的打砖块游戏
- HDU5400 Arithmetic Sequence
- Implement Stack using Queues
- xcode7.0-iOS9新特性之三:界面适配利器:UIStackView
- UITabBarItem 如何触发点击事件