
iOS开发-UI
文章平均质量分 89
Walden_tinghou
这个作者很懒,什么都没留下…
展开
-
tableView的常见属性
1.tableView展示数据的过程调用数据源的下面方法得知一共有多少组数据- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView;调用数据源的下面方法得知每一组有多少行数据- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInS原创 2013-11-14 15:15:36 · 2032 阅读 · 0 评论 -
UICollectionView
Mattt Thompson撰写、 JJ Mao翻译UICollectionView 是一种新的 UITableView ,并且它极其重要。这并不是说,collection views是未知或模糊的--任何一个去过有关它WWDC会议的或是在 iOS 6 beta 版上玩过的人都知道怎么回事。记住,作为一个NSHipster,不仅仅是知道名不见经传的石头,更多是在它们家喻户晓、售罄一转载 2016-03-01 22:58:52 · 493 阅读 · 0 评论 -
UIAlertController
Mattt Thompson撰写、 Croath Liu翻译你知道 UIAlertView、UIActionSheet (以及它们各自的 delegate protocols) 在 iOS 8 中已经被废弃了吗?这是真的。在你的代码中按住 ⌘ 点击 UIAlertView 或者 UIActionSheet,你就会看到最上面的注释:UIAlertView is dep转载 2016-03-01 22:55:18 · 773 阅读 · 0 评论 -
iOS开发UI-Quartz2D what about Quartz2D ?and how to use it ?
1.what about Quartz2D ?1.1简介•Quartz2D是一个二维绘图引擎,同时支持iOS和Mac系统••Quartz 2D能完成的工作绘制图形 : 线条\三角形\矩形\圆\弧等绘制文字绘制\生成图片(图像)读取\生成PDF截图\裁剪图片自定义UI控件… …•Quartz2D能做很多强大的事情,例如裁剪图片原创 2015-03-03 19:49:51 · 623 阅读 · 0 评论 -
iOS开发-Quartz2D上下文栈的操作&详细分析绘图本质(图形上下文栈)
1.关于图形上下文栈的操作•将当前的上下文copy一份,保存到栈顶(那个栈叫做”图形上下文栈”)void CGContextSaveGState(CGContextRef c)•将栈顶的上下文出栈,替换掉当前的上下文void CGContextRestoreGState(CGContextRef c)原创 2015-03-24 18:26:45 · 6423 阅读 · 0 评论 -
UIScrollView的代理——实现图片缩放
1.什么是代理1.1UIScrollView代理简介很多时候,我们想在UIScrollView正在滚动 或 滚动到某个位置 或者 停止滚动 时做一些特定的操作要想完成上述功能,前提条件就是能够监听到UIScrollView的整个滚动过程当UIScrollView发生一系列的滚动操作时, 会自动通知它的代理(delegate)对象,给它的代理发送相应的消息,让代理得知原创 2013-11-14 09:40:38 · 1437 阅读 · 0 评论 -
Xcode 5.0 下载,安装,使用 & iOS开发 -应用管理使用 xib及mvc封装
1.xib简单介绍在iOS5之前,苹果使用xib文件来描述UI界面在iOS5之后,苹果采取了更加强大和先进的storyboard文件来描述界面xib和storyboard的比较,一个轻量级一个重量级。共同点:都用来描述软件界面都用Interface Builder工具来编辑不同点:Xib是轻量级的,用来描述局部的UI界面Storyboard是重量原创 2013-11-13 09:33:41 · 1043 阅读 · 0 评论 -
iOS开发之UI控件——UIPickerView实现点菜系统界面布局
1.UIPickerView常用属性和常用方法1.1.UIPickerView的常见属性// 数据源(用来告诉UIPickerView有多少列多少行)@property(nonatomic,assign)id dataSource;// 代理(用来告诉UIPickerView每1列的每1行显示什么内容,监听UIPickerView的选择)@property(原创 2014-02-22 10:32:56 · 1567 阅读 · 0 评论 -
Quartz2D矩阵操作和官方demo下载学习 和 裁剪 和 重绘(刷帧) 动画
1.矩阵操作1.1首先新建一个project,然后搭建界面。首先自定义一个view(创建一个类让其继承自Uiview,然后在storyboard中拖一个view,并改其名称)1.2代码演示使用1.2.1未旋转之前#import "MJView.h"@implementation MJView/** 渐变色 虚线 pattern blend ....原创 2015-03-25 18:30:15 · 1483 阅读 · 0 评论 -
iOS开发和学习中积累的一些经验总结提炼整理文章001——自定义Cell
自定义tableViewCell有两种方法:通过代码或者通过storybord,下面通过一个例子来说明#import "HTContactCell.h"#import "HTContact.h"@interface HTContactCell ()@property (nonatomic, weak) UIView *divider;@end@implementation HT原创 2016-03-15 22:02:57 · 822 阅读 · 0 评论 -
UICollectionView自定义布局——制作小相册
效果图: 代码:#import "ViewController.h"#import "XMGLineLayout.h"#import "XMGPhotoCell.h"@interface ViewController () @end@implementation ViewControllerstatic NSString * const XMGPhotoI原创 2016-03-31 00:38:37 · 1022 阅读 · 0 评论 -
iOS集成百度地图方法步骤
1.打开 百度地图api链接iOS地图SDK2.注册成为开发者并按照步骤走3.遇到的问题解决原创 2016-03-22 13:47:14 · 12048 阅读 · 4 评论 -
UIScrollView及其代理示例2 图片轮播器——分页功能
1.程序实现效果如图2.分页原理只要将UIScrollView的pageEnabled属性设置为YES,UIScrollView会被分割成多个独立页面,里面的内容就能进行分页展示一般会配合UIPageControl增强分页效果,UIPageControl常用属性如下 一共有多少页@property(nonatomic) NSInteger numberOfPag原创 2013-11-14 09:57:24 · 849 阅读 · 0 评论 -
UIScrollView基本使用
1.什么是UIScrollView移动设备的屏幕大小是极其有限的,因此直接展示在用户眼前的内容也相当有限当展示的内容较多,超出一个屏幕时,用户可通过滚动手势来查看屏幕以外的内容普通的UIView不具备滚动功能,不能显示过多的内容UIScrollView是一个能够滚动的视图控件,可以用来展示大量的内容,并且可以通过滚动查看所有的内容举例:手机上的“原创 2013-11-14 09:13:21 · 869 阅读 · 0 评论 -
iOS开发常用的几种动画效果
1.block代码块动画/** * 大图 */- (IBAction)bigImg { // 1.添加阴影 UIButton *cover = [[UIButton alloc] init]; cover.frame = self.view.bounds; cover.backgroundColor = [UIColor blackColor];原创 2013-11-13 13:00:26 · 927 阅读 · 0 评论 -
IOS开发总结之UIButton常用属性和方法
UIControlStateNormal // 正常状态 UIControlStateHighlighted // 高亮状态 UIControlStateDisabled // 禁用状态 UIControlStateSelected // 选中状态 UIControlStateApplication // UIControlStateReserved // 保留状态原创 2016-04-28 21:41:45 · 2404 阅读 · 0 评论 -
iOS开发总结之UILabel常用属性
NSMutableAttributedString *textLabelStr = [[NSMutableAttributedString alloc] initWithString:text]; [textLabelStr setAttributes:@{NSForegroundColorAttributeName : [UIColor lightGrayColor], NSFontAttributeName : [UIFont systemFontOfSize:17]} range:NSMa原创 2016-04-28 21:59:25 · 2232 阅读 · 0 评论 -
TextKit学习(四)通过boundingRectWithSize:options:attributes:context:计算文本尺寸
boundingRectWithSize:options:attributes:context:计算文本尺寸转载 2016-04-25 15:23:39 · 572 阅读 · 0 评论 -
UICollectionView自定义布局——瀑布流
效果图:代码:#import "ViewController.h"#import "XMGGridLayout.h"#import "XMGPhotoCell.h"@interface ViewController () @end@implementation ViewControllerstatic NSString * const XMGPhotoId = @原创 2016-03-31 00:41:46 · 835 阅读 · 0 评论 -
iOS开发UI-利用Quartz2D 实现基本绘图(画三角形、矩形、圆、圆弧)
1.画三角形 运行结果如下2.具体实现步骤2.1首先新建一个project,然后自定义一个view2.2代码#import "htingShapeView.h"@implementation htingShapeView- (id)initWithFrame:(CGRect)frame{ self = [super initWithFra原创 2015-03-24 13:13:24 · 6047 阅读 · 0 评论 -
iOS开发UI— QQ好友列表(处理头部控件的点击)viewForHeaderInSection:
1.实现效果及代码文件结果如下2.具体实现(标准MVC)2.1.View//// MJHeaderView.m#import "MJHeaderView.h"#import "MJFriendGroup.h"/** 某个控件出不来: 1.frame的尺寸和位置对不对 2.hidden是否为YES 3.有没有添加到父控件中 4.alp原创 2014-01-16 21:28:34 · 3215 阅读 · 0 评论 -
iPhone开发——通过代码自定义cell实现qq聊天界面
1.实现如下效果图2.具体实现2.1plist文件2.2搭建界面2.3代码实现2.3.1模型类//// MJMessage.m#import "MJMessage.h"@implementation MJMessage+ (instancetype)messageWithDict:(NSDictionary *)dict{原创 2013-11-16 13:23:35 · 5894 阅读 · 1 评论 -
cell的循环利用——实现游戏英雄展示界面
1.实例一:用cell实现英雄展示详见:http://blog.youkuaiyun.com/sunnyboy9/article/details/161167572.实例二:循环利用cell实现相同功能代码://// MJViewController.m#import "MJViewController.h"#import "MJHero.h"@interface MJV原创 2013-11-14 15:18:59 · 1334 阅读 · 0 评论 -
UITableViewCell 单组数据展示——实现游戏英雄单组展示
1.Cell简介1.1cell是什么UITableView的每一行都是一个UITableViewCell,通过dataSource的tableView:cellForRowAtIndexPath:方法来初始化每一行UITableViewCell内部有个默认的子视图:contentView,contentView是UITableViewCell所显示内容的父视图,可显示一些辅助指原创 2013-11-14 14:42:00 · 1710 阅读 · 1 评论 -
代理设计模式——实现九宫格界面
1.先实现一个实例,然后用代理设计模式实现这个实例,并比较代理设计模式的好处1.1程序实现效果如图:1.2.实现步骤1.2.1搭建界面MJAppView.xib界面:1.2.2 plist文件1.2.3代码模型类// MJApp.h// 模型类:用来存放数据的类#import /** copy : NSString str原创 2013-11-14 14:18:32 · 1700 阅读 · 0 评论 -
用代理设计模式实现团购界面
1.Delegate的使用场合对象A内部发生了一些事情,想通知对象B对象B想监听对象A内部发生了什么事情对象A想在自己的方法内部调用对象B的某个方法,并且对象A不能对对象B有耦合依赖对象A想传递数据给对象B2.使用delegate的步骤先搞清楚谁是谁的代理(delegate)定义代理协议,协议名称的命名规范:控件类名 + Delegate原创 2013-11-15 09:39:50 · 1386 阅读 · 0 评论 -
通过代码自定义cell(cell的高度不一致)实现新浪微博界面
1.背景当系统自带的cell和xib都不能满足需要的时候就需要自己用代码自定义cell2.自定义cell的步骤1.新建一个继承自UITableViewCell的类2.重写initWithStyle:reuseIdentifier:方法添加所有需要显示的子控件(不需要设置子控件的数据和frame, 子控件要添加到contentView中)进行子控件一次性的属性设置(原创 2013-11-15 23:42:49 · 1393 阅读 · 0 评论 -
UITableView——实现汽车分组展示
1什么是UITableView1.1在众多移动应用中,能看到各式各样的表格数据在iOS中,要实现表格数据展示,最常用的做法就是使用UITableViewUITableView继承自UIScrollView,因此支持垂直滚动,而且性能极佳1.2UITableView的两种样式1.3如何展示数据UITableView需要一个数据源(dataSource)来显原创 2013-11-14 14:23:00 · 2848 阅读 · 0 评论 -
UITableView实现多组汽车展示(模型里面嵌套模型)
1.用UITableView实现下面效果2.实现2.1plist文件2.2代码实现2.2.1模型类分析:根据上面的plist文件可以看出应该是模型里面嵌套模型:最外面的字典代表组模型MJCarGroup,有两个属性,MJCarGroup模型嵌套一个MJCar模型2.2.1.1模型MJCarGroup//// MJCarGroup.h#im原创 2013-11-14 16:04:50 · 1839 阅读 · 0 评论 -
iOS开发-UI-应用管理实现九宫格界面
1.实现如下界面,程序运行结果如图所示:2.实现步骤1.功能分析以九宫格的形式展示应用信息点击下载按钮后,做出相应的操作2.步骤分析加载应用信息根据应用的个数创建对应的view监听下载按钮点击3.九宫格算法分析4.采用技术UIView的常见属性和方法九宫格计算方法字典转模型Xib的使用自定义view(vie原创 2013-09-28 10:11:35 · 1215 阅读 · 0 评论 -
自定义cell——实现复杂的团购界面
1.自定义cell有时候需要自定义UITableViewCell(用一个子类继承UITableViewCell),而且每一行用的不一定是同一种UITableViewCell,所以一个UITableView可能拥有不同类型的UITableViewCell,对象池中也会有很多不同类型的UITableViewCell,那么UITableView在重用UITableViewCell时可能会得到原创 2013-11-15 09:03:47 · 1100 阅读 · 0 评论 -
静态单元格(静态cell)
1.什么是静态单元格,有什么好处?storyboard提供了静态单元格这个功能,当业务中遇到整个界面可由一个tableview来展示, 且里面的数据都是固定的,且单元格没有样式上的差异且几乎不会改变 这时候可以用静态单元格。其好处就是方便快捷。2.实现效果3.具体实现1.新建一个项目,更改控制器让控制器继承自UItableviewcontroller.原创 2014-01-14 19:49:03 · 3688 阅读 · 0 评论 -
QQ聊天布局——利用通知机制实现键盘处理
1.键盘通知•我们经常需要在键盘弹出或者隐藏的时候做一些特定的操作,因此需要监听键盘的状态•键盘状态改变的时候,系统会发出一些特定的通知UIKeyboardWillShowNotification//键盘即将显示UIKeyboardDidShowNotification//键盘显示完毕UIKeyboardWillHideNotification//键盘即将隐原创 2013-12-28 15:47:09 · 897 阅读 · 0 评论 -
案例:超级猜图—Interface Builder常见控件的使用、按钮的多功能使用、@2x的含义、应用程序图标
1.程序运行结果如下:2.plist文件3.代码实现3.1模型类//// MJQuestion.h题目模型(一个MJQuestion对象对应一道题目)#import @interface MJQuestion : NSObject/** * 答案 */@property (nonatomic, copy) NSString *answer;原创 2013-11-13 12:39:19 · 1480 阅读 · 0 评论 -
基础控件使用实例-图片浏览器(UILabel、UIButton、UIImageView及plist)
(1)UILabel的基本设置要想让UILabel自动换行,设置Lines为0即可(2)UIButton的状态及与UIImageView的异同1.UIButtonnormal(普通状态)默认情况对应的枚举常量:UIControlStateNormalhighlighted(高亮状态)按钮被按下去的时候(手指还未松开)对原创 2013-09-27 19:43:34 · 1451 阅读 · 0 评论 -
通过代码自定义cell——实现qq聊天界面(Version 2 实现聊天内容的背景)
1.前期工作见(Version 1)http://blog.youkuaiyun.com/sunnyboy9/article/details/163563572.具体代码实现2.1自定义cell类//// MJMessageCell.h#import @class MJMessageFrame;@interface MJMessageCell : UITableViewCe原创 2013-11-21 10:47:05 · 2355 阅读 · 0 评论 -
iPhone开发——通知机制
1.通知和代理的区别代理是一对一的 一个对象发生的事情只能告诉另外一个对象,通知机制中一个对象发生的事情可以告诉多个对象共同点利用通知和代理都能完成对象之间的通信(比如A对象告诉D对象发生了什么事情, A对象传递数据给D对象)不同点代理 : 一对一关系(1个对象只能告诉另1个对象发生了什么事情)通知 : 多对多关系(1个对象能告诉N个对象发生了什么事情, 1原创 2013-11-21 11:08:18 · 881 阅读 · 0 评论 -
UIButton-按钮——实现图片的缩放
1.UIKit框架提供了非常多的UI控件,但并不是每一个都很常用,有些控件可能1年内都用不上,有些控件天天用,比如UIButton、UILabel、UIImageView、UITableView等等,现在就先来学习非常重要且比较基一个UI控件---UIButton,俗称“按钮”,一般情况下,点击某个控件后,会做出相应反应的都是按钮,按钮的功能比较多,既能显示文字,又能显示图片,还能随时调整内部图片原创 2013-08-09 09:11:08 · 3375 阅读 · 0 评论 -
UIApplicationDelegate launchOptions
Mattt Thompson撰写、 Croath Liu翻译AppDelegate 是 iOS 各种功能的集散中心。应用生命周期管理?URL 路由?通知?Core Data 咒语?各种三方 SDK 的初始化?一些似乎放在哪里都不合适的零散功能?统统丢进 AppDelegate.m 里吧!在 AppDelegate 所有这些拥挤的、超出负载的方法中,-application:didF转载 2016-03-01 22:56:55 · 1169 阅读 · 1 评论