- 博客(60)
- 收藏
- 关注
原创 UI029---UITableView中加载数据
一、实现效果 点击加载更多按钮,出现一个加载图示,三秒钟后添加两条新的数据。 二、实现代码和说明当在页面(视图部分)点击加载更多按钮的时候,主页面(主控制器)会加载两条数据进来。视图部分的按钮被点击的时候,要让主控制器加载数据,刷新表格,2B青年会在视图中增加一个主控制器的属性,通过这个属性去调用进行加载,但在开发中通常通过代理模式来完成这个操作。下面分别是两种实现的代码。1、项目结构和说明说明
2015-08-24 22:54:06 503
原创 UI028---UIScrollView控件实现图片轮播
UIScrollView控件实现图片轮播一、实现效果实现图片的自动轮播 二、实现代码storyboard中布局 1 #import "YYViewController.h" 2 3 @interface YYViewController () <UIScrollViewDelegate> 4 @property (weak, nonatomic) IBOutlet UIScro
2015-08-24 22:48:02 475
转载 UI027---UItableview实现QQ好友列表2
一、实现效果 这里是分割线二、实现代码1.数据模型部分 YYQQGroupModel.h 1 // 2 // YYQQGroupModel.h 3 // 02-QQ好友列表(基本数据的加载) 4 // 5 // Created by apple on 14-5-31. 6 // Copyright (c) 2014年 itcase. All rights reserved. 7
2015-08-12 15:22:01 452
转载 UI026---UITableView实现qq好友列表1
iOS开发UI篇—使用UItableview完成一个简单的QQ好友列表(一)一、项目结构和plist文件 二、实现代码1.说明:主控制器直接继承UITableViewController // YYViewController.h// 02-QQ好友列表(基本数据的加载)//// Created by apple on 14-5-31.// Copyright (c) 2014年
2015-08-12 15:07:11 479
原创 UI025---静态单元格的使用
实现效果与说明 说明:观察上面的展示效果,可以发现整个界面是由一个tableview来展示的,上面的数据都是固定的,且几乎不会改变。要完成上面的效果,有几种方法:(1)可以直接利用代码,返回三组,在判断每组有多少行,展示些什么数据,这样写“死”的代码建议绝不要使用。(2)稍微灵活一些的,可以把plist文件一懒加载的方式,加载到程序中,动态获取。但是观察界面结构,很容易看出这样需要进行模型嵌套
2015-08-12 15:01:24 401
原创 UI024---UITableView的总结
UITableview控件使用小结一、UITableview的使用步骤UITableview的使用就只有简单的三个步骤:1.告诉一共有多少组数据方法:- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView;2.告诉每组一共有多少行方法:- (NSInteger)tableView:(UITableView *)tableVi
2015-08-12 14:55:25 332
原创 UI023---代码实现UITableView
使用纯代码自定义UItableviewcell实现一个简单的微博界面布局一、实现效果 二、使用纯代码自定义一个tableview的步骤1.新建一个继承自UITableViewCell的类2.重写initWithStyle:reuseIdentifier:方法添加所有需要显示的子控件(不需要设置子控件的数据和frame, 子控件要添加到contentView中)进行子控件一次性的属性设置(有些属性
2015-08-11 15:42:15 453
原创 UI022---xib自定义UITableView
使用xib自定义UItableviewcell实现一个简单的团购应用界面布局一、效果 三、代码示例1.没有使用配套的类,而是直接使用xib文件控件tag值操作数据模型部分: YYtg.h文件 1 // 2 // YYtg.h 3 // 01-团购数据显示(没有配套的类) 4 // 5 // Created by apple on 14-5-29. 6 // Copyrigh
2015-08-11 15:18:15 344
原创 UI021---UITableView数据刷新
一、项目文件结构和plist文件 二、实现效果1.说明:这是一个英雄展示界面,点击选中行,可以修改改行英雄的名称(完成数据刷新的操作).运行界面: 点击选中行: 修改数据后自动刷新: 三、代码示例数据模型部分: CBHeros.h文件1 // 2 // CBHeros.h 3 // 英雄展示(数据刷新) 4 // 5 // Created by apple o
2015-08-11 15:03:37 392
原创 UI020---UITableView实例汽车品牌
一、plist文件和项目结构图 说明:这是一个嵌套模型的示例二、代码示例://CBCarsgroup.h文件代码: 1 // 2 // CBCarsgroup.h 3 // 汽车展示 4 // 5 // 6 // 7 // 8 9 #import <Foundation/Foundation.h>10 11 @interface CBCarsgroup : NSO
2015-08-11 08:38:13 542
原创 UI019---ITableviewcell的性能问题和缓存优化
一、UITableviewcell的一些介绍UITableView的每一行都是一个UITableViewCell,通过dataSource的 tableView:cellForRowAtIndexPath:方法来初始化每⼀行UITableViewCell内部有个默认的子视图:contentView,contentView是UITableViewCell所显示内容的父视图,可显示一些辅助指示视图辅助指
2015-08-10 00:19:36 362
原创 UI018---UITableView使用
一、一个简单的英雄展示程序NJHero.h文件代码(字典转模型) 1 #import <Foundation/Foundation.h> 2 3 @interface NJHero : NSObject 4 /** 5 * 头像 6 */ 7 @property (nonatomic, copy) NSString *icon; 8 /** 9 * 名称10 */1
2015-08-10 00:16:23 404
原创 UI017---UITableView的入门
一、基本介绍在众多移动应⽤用中,能看到各式各样的表格数据 。在iOS中,要实现表格数据展示,最常用的做法就是使用UITableView,UITableView继承自UIScrollView,因此支持垂直滚动,⽽且性能极佳 。UITableview有分组和不分组两种样式,可以在storyboard或者是用代码设置。 二、数据展示UITableView需要⼀一个数据源(dataSource)来显示数据
2015-08-10 00:01:39 404
原创 UI016----图片缩放
图片缩放一、缩放1.简单说明:有些时候,我们可能要对某些内容进行手势缩放UIScrollView不仅能滚动显示大量内容,还能对其内容进行缩放处理。也就是说,要完成缩放功能的话,只需要将需要缩放的内容添加到UIScrollView中2.缩放原理当用户在UIScrollView身上使用捏合手势时,UIScrollView会给代理发送一条消息,询问代理究竟要缩放自己内部的哪一个子控件(哪一块内容) 当用
2015-08-09 23:51:59 475
原创 UI015---UIScrollView控件介绍
UIScrollView控件介绍一、知识点简单介绍1.UIScrollView控件是什么?(1)移动设备的屏幕⼤大⼩小是极其有限的,因此直接展⽰示在⽤用户眼前的内容也相当有限(2)当展⽰示的内容较多,超出⼀一个屏幕时,⽤用户可通过滚动⼿手势来查看屏幕以外的内容(3)普通的UIView不具备滚动功能,不能显⽰示过多的内容(4)UIScrollView是一个能够滚动的视图控件,可以⽤用来展⽰示⼤大量的内
2015-08-09 23:48:27 354
原创 UI014---常用的三种动画
【在ios开发中,动画是廉价的】一、首尾式动画代码示例: 复制代码// beginAnimations表示此后的代码要“参与到”动画中[UIView beginAnimations:nil context:nil];//设置动画时长 [UIView setAnimationDuration:2.0]; self.headImageView.bounds = rect;// commi
2015-08-05 17:42:27 382
原创 UI013---ImageView添加控件及tag说明
在ImageView中添加按钮以及Tag的参数说明一、tag参数一个视图通常都只有一个父视图,多个子视图,在开发中可以通过使用子视图的tag来取出对应的子视图。方法为Viewwithtag:提示点:在xib中如果想要通过tag参数获取对应的控件(属性),不要把tag的参数设置为0,因为xib中所有的对象默认tag都为0,设置为0取不到对象。二、ImageView中添加按钮 (1)ImageView
2015-08-05 17:32:58 590
原创 UI012---字典转模型
一、KVC简单介绍KVC key valued coding 键值编码KVC通过键值间接编码 补充:与KVC相对的时KVO,即key valued observer 键值观察。监听某一个模型的属性,只要模型属性的值一变化就通知你。二、使用KVC1.KVC基本使用介绍(1)代码示例:新建一个命令行项目,用以演示KVC的用法完成之后为项目添加一个Person类。 为Person类添加两个属性(nam
2015-08-05 17:23:24 612
转载 UI011---初识MVC
一、要求要求完成下面一个小的应用程序。 二、一步步对代码进行优化注意:在开发过程中,优化的过程是一步一步进行的。(如果一个人要吃五个包子才能吃饱,那么他是否直接吃第五个,前面四个不用吃就饱了?)1.完成基本要求的代码(使用了字典转模型和xib连线)(1)文件结构2)主要代码 字典转模型部分:YYappInfo.h头文件 1 // 2 // YYappInfo.h 3 // 12-视图改
2015-08-05 17:13:45 369
原创 UI010---cat tom
前面要再storyboard设置 并连好线 设置了两个透明的button 和喝牛奶的button //// CBViewController.m// 05-汤姆猫//// Created by apple on 15-7-24.// Copyright (c) 2015年 cb. All rights reserved.//#import "CBViewController.h"@
2015-08-05 17:01:15 440
转载 UI009---xib的使用
一、简单介绍xib和storyboard的比较,一个轻量级一个重量级。共同点:都用来描述软件界面都用Interface Builder工具来编辑不同点:Xib是轻量级的,用来描述局部的UI界面Storyboard是重量级的,用来描述整个软件的多个界面,并且能展示多个界面之间的跳转关系二、xib的简单使用1.建立xib文件 建立的xib文件命名为appxib.xib 2.对xib进行设置 根
2015-08-05 16:55:41 386
转载 UI008---ios、swift推荐书籍强烈推荐
我简单介绍一下我那时学习参考的书籍。希望对你有帮助。1. Sams Teach Yourself iOS 5 Application Development in 24 Hours Sams Teach Yourself iOS 6 Application Development in 24 Hours 我学习的时候只有ios5版本。这本书是我见过的最好的ios入门书籍,没有之一。概念介绍清晰
2015-07-31 15:09:16 1764
原创 UI007---KVC
字典转模型1.KVC 1> KVC:NSKeyValueCoding的简称,是一种可以直接通过字符串的名字(key)来访问类属性的机制,而不是通过调用的Setter、Getter方法访问。2>九宫格app能完成功能但是存在“问题”1.从plist中加载的数据 2.实现的代码 1 // 2 // CBViewController.m 3 // 应用管理 4 // 5 // Creat
2015-07-29 23:13:51 392
原创 UI006---app九宫格排列下载
九宫格实例一、完成类似九宫格应用商店,下载app 二、寻找上图的规律,找出相互关系,计算出每一个uiview的x坐标和y坐标。 三、九宫格代码 //总列数 int count = 4; //小格格尺寸 int w = 50; int h = 50; //算间隙 int jianXi = (self.view.frame.size.width -
2015-07-29 22:52:53 547
原创 UI005---延迟加载
延迟加载(懒加载)1.延迟加载基本延迟加载,即在需要的时候才加载(效率低,占用内存小)。所谓延迟加载,写的是其get方法.注意:如果是延迟加载的话则一定要注意先判断是否已经有了,如果没有那么再去进行实例化2.使用懒加载的好处:(1)不必将创建对象的代码全部写在viewDidLoad方法中,代码的可读性更强(2)每个控件的getter方法中分别负责各自的实例化处理,代码彼此之间的独立性强,松耦合3.代
2015-07-28 22:00:50 306
原创 UI004---图片浏览器
简单的浏览器查看程序 一、程序实现要求 综合使用UIImageView、UILabel、UIButton 1.要求 2. 界面分析(1) 需要读取或修改属性的控件需要设置属性序号标签图片图片描述左边按钮右边按钮(2) 需要监听响应事件的对象,需要添加监听方法左边按钮右边按钮二、实现基本功能的程序1 // CB=captain Baylor 2 // CBViewController
2015-07-27 22:20:59 421
原创 UI003---transform属性
transform属性(形变)transform属性在OC中,通过transform属性可以修改对象的平移、缩放比例和旋转角度常用的创建transform结构体方法分两大类(1) 创建“基于控件初始位置”的形变CGAffineTransformMakeTranslation(平移)CGAffineTransformMakeScale(缩放)CGAffineTransformMakeRotatio
2015-07-26 20:49:38 350
原创 UI002---自定义控件
iOS开发UI基础—自定义控件(手写控件),frame,center和bounds属性一、手写控件 1.手写控件的步骤 (1)使用相应的控件类创建控件对象 (2)设置该控件的各种属性 (3)添加控件到视图中 父控件 子控件 (4)如果是button等控件,还需考虑控件的单击事件等 (5)注意:View Contollor和view的关系 2.注意点在OC开发中,Storyboard中的
2015-07-26 20:45:24 393
原创 UI001---UIButton
一、简单说明一般情况下,点击某个控件后,会做出相应反应的都是按钮按钮的功能比较多,既能显示文字,又能显示图片,还能随时调整内部图片和文字的位置,UIButton可以设置两张图片二、按钮的三种状态normal(普通状态)默认情况(Default)对应的枚举常量:UIControlStateNormalhighlighted(高亮状态)按钮被按下去的时候(手指还未松开)对应的枚举常量:UIControl
2015-07-26 20:33:55 373
原创 oc014---oc的数据类型
Object-c提供基本数据类型:int 、float 、double 、char Int: 八进制 整型第一位为 0, NSLog 的格式符为: %o 显示的八进制不带前导 0 十六进制 以 0x 开头的整型,NSLog 的格式符为: 若(%X 或%#X) 显示的十六进制用大写 %#o 显示的八进制带前导0 %x 显示的十六进制不带前导 0x %#x 显示的十六进制带前导0x Flo
2015-07-24 20:34:29 365
原创 oc013---oc程序的整体语法结构
程序的头文件和源文件的扩展名分别为.h 和.m。 注释语法和C 一样。Object_C 中的 nil 相当于 NULL。 Object_C 中的 YES 和 NO 相当于 true 和 false。 这里再讲解一下 YES 和 NO: Object-c 提供了 BOOL 类型, 但这个BOOL 类型和 C++里的并不一样: 在C++里一切非 0 值的东西都 为 true,而为 0 值的为 fal
2015-07-24 20:26:23 312
原创 oc012---ARC
一、 基本简介 ➢ ARC是自iOS 5之后增加的新特性,完全消除了手动管理内存的烦琐,编译器会自动在适当的地方插入适当的retain、release、autorelease语句。你不再需要担心内存管理,因为编译器为你处理了一切 ➢ ARC 是编译器特性,而不是 iOS 运行时特性,它也不是类似于其它语言中的垃圾收集器。因此 ARC 和手动内存管理性能是一样的,有时还能更加快速,因为编
2015-07-24 13:04:13 262
原创 oc011---block
block的介绍 Block封装了一段代码,可以在任何时候执行 Block可以作为函数参数或者函数的返回值,而其本身又可以带输入参数或返回值。 苹果官方建议尽量多用block。在多线程、异步任务、集合遍历、集合排序、动画转场用的很多Blocks的定义:int (^MySum)(int, int) = ^(int a, int b) { return a+b;};定义了一个叫My
2015-07-23 22:17:02 275
原创 oc010---protocol
一 简单的使用 1. 基本用途 ➢ 可以用来声明一大堆方法(不能声明成员变量) ➢ 只要某个类遵守了这个协议,就相当于拥有这个协议中的所有方法声明 ➢ 只要父类遵守了某个协议,就相当于子类也遵守了格式 ➢ 协议的编写 @protocol 协议名称 // 方法声明列表 @end ➢ 某个类遵守协议 @interface 类名 : 父类 <协议名称> @en
2015-07-23 22:09:48 253
原创 oc008---xcode的使用注意事项(逐步补充当中)
取消ARC 要想手动调用retain、release等方法,在创建项目的时候不要勾选ARC 目前已经默认为使用arc。所以要想修改必须在xcode中将默认的yes修改成no 开启僵尸对象监控 默认情况下,Xcode是不会管僵尸对象的,使用一块被释放的内存也不会报错。为了方便调试,应该开启僵尸对象监控 重点内容 xcode 左边导航栏中,类文件后面的标记“A”,”M”,”?,有需要的朋友可以参
2015-07-22 22:54:41 360
原创 oc007---内存管理
什么是内存管理 ➢ 移动设备的内存极其有限,每个app所能占用的内存是有限制的 ➢ 当app所占用的内存较多时,系统会发出内存警告,这时得回收一些不需要再使用的内存空间。比如回收一些不需要使用的对象、变量等 ➢ 管理范围:任何继承了NSObject的对象,对其他基本数据类型(int、char、float、double、struct、enum等)无效 ➢ 每个OC对象都有自己的引
2015-07-22 22:40:14 371
原创 oc006---oc类的本质
类也是个对象 ➢ 其实类也是一个对象,是Class类型的对象,简称“类对象” ➢ Class类型的定义 typedef struct objc_class *Class; ➢ 类名就代表着类对象,每个类只有一个类对象+load和+initialize ➢ +load 在程序启动的时候会加载所有的类和分类,并调用所有类和分类的+load方法 先加载父类,
2015-07-22 22:37:43 374
原创 oc005---oc分类 categroy
基本用途 ➢ 如何在不改变原来类模型的前提下,给类扩充一些方法?有2种方式 继承 分类(Category)格式 ➢ 分类的声明 @interface 类名 (分类名称) // 方法声明 @end ➢ 分类的实现 @implementation 类名 (分类名称) // 方法实现 @end好处 ➢ 一个庞大的类可以分模块开发 ➢ 一个庞
2015-07-22 22:35:00 387
原创 web001-html,css,js
一、HTML + CSS 1.能看到标签的结构 * 父子关系 123属性 2.了解元素(标签)的类型 1> block:块级 * 独占一行 * 能随意修改尺寸2> inline:行内 * 多个行内元素能显示在同一行 * 不能修改尺寸,尺寸取决于内容的多少3> inline-block:行内-块级 * 多个行内-块级元素能显示在同一行 * 能随意修改尺寸 * 不设置尺寸,默
2015-07-22 21:16:18 550
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人