本次九宫格案例: (1)导入app.plist和各种图片素材,方便兴许开发.实际开发中,也是如此. (2)把plist中数组导入进来. --由于本案例中app.plist终于是一个数组,数组里面是字典.所以我们须要一个数组类型来接受这个plist文件. --我们利用之前掌握的在变量的getter中进行延迟载入数据. #import "ViewController.h" @interface ViewController () @property(nonatomic,strong) NS…
Runtime之字典转模型实战 如果您还不知道什么是runtime,那么请先看看这几篇文章: http://www.cnblogs.com/iCocos/p/4734687.html http://www.cnblogs.com/iCocos/p/4676679.html http://www.cnblogs.com/iCocos/p/4725527.html 关于runtime的详细介绍及其相关的小实例 好了,这里就不多废话了,直接开干! 先来看看怎么使用Runtime给模型类赋值 iOS开发…
对于IOS开发人员来说,在自己主动布局出现前仅仅能通过计算和设置frame的值来处理.这样设置位置时就会出现非常多硬编码,同一时候在屏幕旋转和不同屏幕之间适配时须要编码又一次调整位置和尺寸,我们也能够重载视图的layoutSubviews的函数来写代码又一次布局. 自己主动布局出现后确实在一定程度上攻克了位置和尺寸硬编码的问题,可是通过代码来写自己主动布局非常的复杂和麻烦,并且代码量会添加非常多. 在自己主动布局领域android系统通过提供FrameLayout, LinearLayout,…
继续对iOS开发基础-九宫格坐标(5)中的代码进行优化. 优化思路:把字典转模型部分的数据处理操作也拿到模型类中去实现,即将 ViewController 类实现中 apps 方法搬到 WJQAppInfo 类实现. 实例代码 在 WJQAppInfo.h 中添加一个向外公开的接口,其返回处理好的模型数组,方法定义如下: + (NSArray *)appInfoArray; 实现代码如下: //WJQAppInfo.m.将数据处理部分搬到模型类中进行处理 + (NSArray *)appInfo…
继续在iOS开发基础-九宫格坐标(4)的基础上进行优化. 一.改进思路 1)iOS开发基础-九宫格坐标(4)中 viewDidLoad 方法中的第21.22行对控件属性的设置能否拿到视图类 WJQAppView ? 2) viewDidLoad 方法中第18.19行从 xib 文件中读取信息的操作能否封装到 WJQAppView ? 3) viewDidLoad 方法中第23.24行的按钮单击事件能否也放到 WJQAppView 中? 二.实例代码 重写 WjQAppView 类,其头文件内容如…
对iOS开发基础-九宫格坐标(3)的代码进行进一步优化. 新建一个 UIView 的子类,并命名为 WJQAppView ,将 appxib.xib 中的 UIView 对象与新建的视图类进行关联.  WJQAppView 类中声明3个 IBOutlet 属性,与 appxib.xib 中的视图对象包含的 UIImageView . UILabel 和 UIButton 建立连接. WJQAppView 头文件代码如下所示: //WJQAppView.h @interface WJQAppVie…
延续iOS开发基础-九宫格坐标(2)的内容,对其进行部分修改. 本部分采用 Xib 文件来创建用于显示图片的 UIView 对象. 一.简单介绍  Xib 和 storyboard 的比较: 1) Xib 是轻量级的,用来描述局部的UI界面: 2) storyboard 是重量级的,用来描述整个软件的多个界面,并且能演示多个界面之间的连接关系. 二. Xib 的简单使用 按照 Command + N ----> User Interface ----> Empty 新建一个 Xib 文件,并命…
在iOS开发基础-九宫格(1)中,属性变量 apps 是从plist文件中加载数据的,在 viewDidLoad 方法中的第20行.26行中,直接通过字典的键名来获取相应的信息,使得 ViewController 直接与数据打交道,如果频繁这样使用,可能会不小心把键名写错,而程序却不会报错.因此,考虑把字典数据转换成一个模型,把数据封装到模型中去,让 ViewController 与模型交互,而不与数据直接打交道. 修改iOS开发基础-九宫格(1)中的代码: 一.字典转模型介绍 字典转模型的好处…
来自:http://www.jianshu.com/p/bcf86b170d9c 前言 为什么会写这个?因为在iOS开发中,界面的布局一直没有Android布局有那么多的方法和优势,我个人开发都是纯代码,Masonry这个框架我在开发中也是不用的,一个是代码布局的时候,代码量比较多,另外好像在iOS10 布局有问题,网上也有些解决的方法了. 所以就想能自定义一些UI控件,使布局更加简单 实现思路 可以像Android的wrap_content一样,是UILabel 可以根据内容来展示控件的宽高…
一.功能分析 1)以九宫格展示图片信息,每一个 UIView 包含一个 UIImageView .一个 UILabel 和一个 UIButton . 2)加载App数据,根据数据长度创建对应的格子数: 3)点击下载按钮后,做出相应操作. 二.九宫格信息分析 三.实例代码 新建Plist属性文件,并命名为Data,修改属性列表成如下形式: 定义每一个 UIview 的宽度和高度: //ViewController.m ; //子视图宽度 ; //子视图高度 在类扩展中声明 NSArray 属性,用…