博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
iOS开发UI篇—九宫格坐标计算
阅读量:5159 次
发布时间:2019-06-13

本文共 1231 字,大约阅读时间需要 4 分钟。

iOS开发UI篇—九宫格坐标计算

一、要求

完成下面的布局

 

二、分析

寻找左边的规律,每一个uiview的x坐标和y坐标。

三、实现思路

 

(1)明确每一块用得是什么view

(2)明确每个view之间的父子关系,每个视图都只有一个父视图,拥有很多的子视图。

(3)可以先尝试逐个的添加格子,最后考虑使用for循环,完成所有uiview的创建

(4)加载app数据,根据数据长度创建对应个数的格子

(5)添加格子内部的子控件

(6)给内部的子控件装配数据

四、代码示例

1 //  2 //  YYViewController.m  3 //  九宫格练习  4 //  5 //  Created by 孔医己 on 14-5-22.  6 //  Copyright (c) 2014年 itcast. All rights reserved.  7 //  8   9 #import "YYViewController.h" 10  11 @interface YYViewController () 12 @property(nonatomic,strong)NSArray *apps; 13 @end 14  15 @implementation YYViewController 16  17  18 //1.加载数据 19 - (NSArray *)apps 20 { 21     if (!_apps) { 22         NSString *path=[[NSBundle mainBundle]pathForResource:@"app.plist" ofType:nil]; 23         _apps=[NSArray arrayWithContentsOfFile:path]; 24     } 25     return _apps; 26 } 27  28 - (void)viewDidLoad 29 { 30     [super viewDidLoad]; 31     NSLog(@"%d",self.apps.count); 32      33     //2.完成布局设计 34      35     //三列 36     int totalloc=3; 37     CGFloat appvieww=80; 38     CGFloat appviewh=90; 39      40     CGFloat margin=(self.view.frame.size.width-totalloc*appvieww)/(totalloc+1); 41     int count=self.apps.count; 42     for (int i=0; i
View Code

执行效果:

转载于:https://www.cnblogs.com/dondre/p/4092095.html

你可能感兴趣的文章
SpringBoot 使用 MyBatis 分页插件 PageHelper 进行分页查询
查看>>
《DSP using MATLAB》Problem 6.17
查看>>
微信公众平台开发实战Java版之如何网页授权获取用户基本信息
查看>>
beta阶段第一次scrum meeting
查看>>
一周TDD小结
查看>>
(三)建筑物多边形化简系列——去除冗余点
查看>>
Spring Boot Oauth2缓存UserDetails到Ehcache
查看>>
sizeof与strlen的用法
查看>>
2017 ICPCECPC 邀请赛 F,D,E, I 题解
查看>>
Linux 下常见目录及其功能
查看>>
python Termux Android 开发介绍
查看>>
开源框架中常用的php函数
查看>>
Java语法糖初探(三)--变长参数
查看>>
Liunx常用命令(Mile)
查看>>
nginx 的提升多个小文件访问的性能模块
查看>>
C#语言学习:变量的声明与初始化的范围(对比C++)
查看>>
D. Buy a Ticket(优先队列+dijkstra)
查看>>
set&map
查看>>
git解决一个电脑多用户情况(win7)
查看>>
《高级软件测试》实践作业4学习记录12月28日
查看>>