iOS基础——通过案例学知识之xib、plist、mvc
透过案例学习xib的使用、plist的使用、mvc在iOS的使用,今天要做的案例效果图
1、xib和nib
xib文件可以被XCode编译成nib文件,xib文件本质上是一个xml文件,而nib文件就是编译后的二进制文件
2、xib和main.storyboard
xib是轻量级的UI布局,main.storyboard是重量级的,用来描述整个软件的多个界面,并且能展示多个界面的跳转关系
3、xib的创建
创建项目中需要的xib文件
4、xib的使用
进入xib界面,直接通过底部的控件,拖拽控件,组成我们项目中需要的一个Item,接着就是重复遍历一样的出来就可以形成九宫格了
5、xib的属性设置
我们需要创建一个YellowView继承UIView,来与xib进行关联
① 设置class属性
② 设置xib中的View的大小
③ 设置xib中View的圆角属性,边框属性等等
5、xib初始化
当xib将m文件关联起来之后,默认会在m文件中执行初始化方法
6、代码获取xib
1、创建plist文件
plist用来存储设置的地方,也可以存储资源,你可以理解为一个小型的自带数据库一样,不过它的操作可不是跟数据库一样,通过New File可以找到plist文件
2、设置plist数据
对plist进行赋值,设置我们要演示的数据到plist上,name表示名字,icon表示图片资源的名字
3、获取Plist数据
通过代码获取plist的根属性NSArray,通过遍历,将plist数据转换成模型,并存储在dataArray中
1、框架结构目录高档女装品牌
2、Model
根据案例需求,Model层应该储存的数据
- name属性
- icon属性
- 由于数据源是个字典类型,需要构造方法让字典转换为模型
3、View
View层主要描述xib中的View,其应该包含
- 文本View
- 图片View
- 按钮点击事件
- 点击事件处理
- 点击动画效果
4、Cotroller
Controller负责逻辑处理,处理数据加载,和处理数据与View的绑定
- 读取数据源
- 循环数据源,添加到xib中的View
- 为View绑定Model数据
iOS基础——通过案例学知识之xib、plist、mvc的更多相关文章
- iOS基础问答面试
<简书社区 — Timhbw>iOS基础问答面试题连载(一)-附答案:http://www.jianshu.com/p/1ebf7333808d <简书社区 — Timhbw> ...
- [iOS基础控件 - 5.5] 代理设计模式 (基于”APP列表"练习)
A.概述 在"[iOS基础控件 - 4.4] APP列表 进一步封装,初见MVC模式”上进一步改进,给“下载”按钮加上效果.功能 1.按钮点击后,显示为“已下载”,并且不 ...
- [置顶] IOS 基础入门教程
IOS 基础入门教程 教程列表: IOS 简介 IOS环境搭建 Objective C 基础知识 创建第一款iPhone应用程序 IOS操作(action)和输出口(Outlet) iOS - 委托( ...
- ios本地文件内容读取,.json .plist 文件读写
ios本地文件内容读取,.json .plist 文件读写 本地文件.json .plist文件是较为常用的存储本地数据的文件,对这些文件的操作也是一种常用的基础. 本文同时提供初始化变量的比较标准的 ...
- iOS回顾笔记( 01 )-- XIB和纯代码创建应用的对比
header{font-size:1em;padding-top:1.5em;padding-bottom:1.5em} .markdown-body{overflow:hidden} .markdo ...
- IOS基础学习-2: UIButton
IOS基础学习-2: UIButton UIButton是一个标准的UIControl控件,UIKit提供了一组控件:UISwitch开关.UIButton按钮.UISegmentedContro ...
- iOS 基础日记-修饰符
今晚随便温习了一下iOS 基础关于修饰符这块的东西,下面简单的来描述一下,其中有的也是在网络学习到的: strong与weak是由ARC新引入的对象变量属性 ARC的解释:ARC引入了新的对象的生命周 ...
- iOS网络相关零散知识总结
iOS网络相关零散知识总结 1. URL和HTTP知识 (1) URL的全称是Uniform Resource Locator(统一资源定位符). URL的基本格式 = 协议://主机地址/路径 ...
- 关于ios导航控制器的知识总结
关于ios导航控制器的知识总结 添加了导航控制器后: 1.一个导航控制器会有一个顶部导航栏navigationbar和一个底部工具栏toolbar,它们是导航控制器navC的属性.且导航栏默认是不隐藏 ...
随机推荐
- robot_framework + selenium + 上传本地文件+win7 32位
1.下载与安装AutoIt v3 地址链接:http://pan.baidu.com/s/1hqsDFBA,我自己是32位的系统,用这个运行可以 2.安装完成后,如下图所示 3. AutoIt Wi ...
- 201706 gem 'rails-erd'生成Model关系图
[工具]一张图理清各个model之间关系 安装 Graphviz 2.22+: 终端机中执行 brew install graphviz Gemfile中添加 gem 'rails-erd' 终端机中 ...
- 微信公众号sdk
微信公众号开发 能享用微信公众号的API,比如分享给好友,分享到朋友圈,禁止菜单功能,选择图片,获取地址,以及支付 微信的功能有两种执行方式 一种是 wx.xx 一种是 WeixinJSBridge. ...
- Redis详解(四)——删除策略
Redis详解(四)--删除策略 Redis中的数据特征 Redis是一种内存级数据库,所有数据均存放在内存中,内存中的数据可以通过TTL指令来获取其状态,当 key 不存在时,返回 -2 . 当 k ...
- 获取QQ状态接口开发示例
unit checkqqstatus; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Control ...
- NO6 alias-unalias命令,递归创建目录,如何取消覆盖提示
·如果需要更新补丁则执行:·yum update·yum install lrzsz telnet tree nmap nc -y·alias #查看系统现有的别名. 一.设置别名eg: ...
- flask 常用数据模型模板
1.一对多关系模型 示例代码 class Role(db.Model): """角色表""" __tablename__ = 'roles' ...
- redis简单的实现(java)
1.首先新建一个maven项目,在pom.xml中添加依赖 <dependency> <groupId>redis.clients</groupId> <ar ...
- R函数
1. sd() 求一组数据的标准差 > x = rep(1,15) > x [1] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 > sd(x) [1] 0 2.var ...
- Machine Learning Note Phase 1( Done!)
Machine Learning 这是第一份机器学习笔记,创建于2019年7月26日,完成于2019年8月2日. 该笔记包括如下部分: 引言(Introduction) 单变量线性回归(Linear ...