自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(37)
  • 收藏
  • 关注

原创 程序启动过程

程序启动过程:1、打开程序2、执行main函数3、执行UIApplicationMain函数4、执行UIApplication(创建和设置代理对象,开启事件循环)5、监听系统事件其中特别说明执行main函数这里:int main(int argc, char * argv[]) { @autoreleasepool { return UIApplicatio

2015-01-30 09:59:53 399

原创 AppDelegate

AppDelegate 学习所有的移动操作系统都有一个致命的缺点:app容易受到打扰,比如来电,锁屏在受到干扰时候:会产生一些系统事件,这时UIApplication会通知它的delegate对象,让delegate来处理这些事情事件包括:1、应用程序生命周期2、系统事件3、内存警告//app启动完毕调用- (BOOL)application:(UIApplication *)a

2015-01-30 09:59:45 350

原创 UIApplication

UIApplication学习 /** 说明:这里控制显示必须判断是否是IOS8,否则报错,因为在IOS8中升级导致这里显示新闻得添加权限 判断系统是否为iOS8的系统,否则8之前的系统会报错 */ UIUserNotificationSettings *settings = [UIUserNotificationSettings setti

2015-01-30 09:57:52 334

原创 UITextFilder 输入框 二个重要属性

重点:这里输入框中,有二个属性必须掌握1、 self.inputField.inputView = picker; 这里是自定义弹出键盘 这里辅助弹出键盘上,添加完成按钮的,必须掌握,因为IOS键盘默认是不弹下来的2、 self.inputField.inputAccessoryView = [UIButton buttonWithType:UIButtonTypeC

2015-01-30 09:57:19 318

原创 UIDatePicker Android的日期选择器

二.UIDatePicker1.常见属性// datePicker的显示模式@property (nonatomic) UIDatePickerMode datePickerMode;// 显示的区域语言@property (nonatomic, retain) NSLocale *locale;2.监听UIDatePicker的选择* 因为UIDatePicker继承自UIC

2015-01-30 09:55:40 690

原创 UIPickerView 就是Android的选择器

UIPickerView 使用,就是Android的选择器#import "ViewController.h"@interface ViewController () @property(nonatomic, strong) NSArray *foods;@property (weak, nonatomic) IBOutlet UILabel *fruitLabel;@pro

2015-01-30 09:53:37 1046

原创 didMoveToSuperview - UITableVIew重刷新列表,内存分配问题

/** *  缘由:因为UITableView刷新列表,也就是reloadData方法调用后,整个列表的所有行就会重新加载,自然每行对应的内存就会重新分配 *  那重新分配原开始内存对应的再用来调用方法则无效,因此我们只有得到新的内存分配后再调用才有效 * *  非常重要的方法 : *  当一个控件被分配到另一个控件的时候会调用这个方法,这个方法是系统调用,不用自己调用 *

2015-01-30 09:52:32 514

原创 写一个代理(java写一个接口)

/////////第一步////////////////////////////////////////写一个代理:#import @class FLFriendViewgroup, FLHeadView;/** * 写一个代理(java写一个接口) */@protocol FLHeadViewDelegate @optional- (void)headViewDidC

2015-01-30 09:51:29 830

原创 通知机制

键盘的知识点:先学习:通知机制什么是通知机制?就是多个对象之间进行通信1、通知的发布2、通知的监听3、通知的移除通知中心(NSNotificationCenter)每一个应用程序都有一个通知中心(NSNotificationCenter)实例,专门负责协助不同对象之间的消息通信任何一个对象都可以向通知中心发布通知(NSNotification),描述自己在做什么,其他感兴趣的对

2015-01-30 09:50:29 463

原创 键盘

键盘操作: //监听键盘的通知 [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWillChangeFrame:) name:UIKeyboardWillChangeFrameNotification object:nil];/** * 当前键盘改变了fr

2015-01-30 09:50:02 360

原创 点9 for ios

Android的.9处理在ios中怎么做新知识,图片如何拉伸, 就是Android .9原理:这里同Android不同在于,这里是求出对应的一个范围,在这个范围内拉伸,这个范围就是UIEdgeInsets方法如下: UIImage *normal = [UIImage imageNamed:@"chat_send_nor"]; //处理图片,就是处理.9

2015-01-30 09:47:07 398

原创 XIB内容UitableView显示,行高不相同情况

非XIB内容的UitableView(cell高度不一致)通过代码自定义cell1、新建一个继承自UITableView的类2、重写- (id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier方法 在方法中添加所有需要的子控件 重写模板: - (id)initWi

2015-01-30 09:32:54 638

原创 快捷代码格式设置

重点代码:重点:设置快捷代码格式:@property(nonatomic, weak) Statuses *status;拖入之后设置为:@property(nonatomic, weak) *;Completions scopes 设置位all

2015-01-14 10:08:09 386

转载 Failed to instantiate the default view controller

问题:报错显示:Failed to instantiate the default view controller for UIMainStoryboardFile 'Main' - perhaps the desi1,Failed to instantiate the default view controller for UIMainStoryboardFile '

2015-01-14 10:06:01 381

原创 KVC

先补充一点:1、我们放弃用valueForKey,因为它只能取直接属性,我们采用valueForKeyPathreturn [self.groups valueForKeyPath:@"title"]; //这里返回一个数组2、setValuesForKeysWithDictionary- (instancetype)initWithDict:(NSDictionary *)dict

2015-01-12 10:22:53 353

原创 代理:如何写一个代理

写一个代理重点:1、协议最好实现根协议2、代理方法设置位id,这样任何类型都可以第二次总结1、首先写一个协议,这个写在类的声明里(就是JAVA的先写好一个接口interface),协议实现根协议 注意:1、协议名就死控件名加上Delegate 2、方法上我们加上@optional,方法可以不实现 3、特别重要命名:这里协议的方法如果是View的就以View开头,不要加前缀

2015-01-12 09:44:09 755

原创 菊花控件:

菊花控件:1、默认菊花在XIB文件中不会自动刷新样式,修改方式是点击右侧属性中的Animating勾上,同时勾上Hides When Stoped 当停止的时候自动隐藏(优化)

2015-01-12 09:42:39 401

原创 NSBundle知识点

NSBundle知识点通过NSBundle来得到我们的资源,因此我们称NSBundle位资源包,在资源包内可以找到我们的开发中的所有资源,如XIB文件,如PLIST文件因此称为:资源包小技巧1、在使用过程中,如果需要传Bundle的方法,我们都直接传nil,在IOS中传入为空的方法就代表了当前MainBundle2、

2015-01-12 09:42:05 340

原创 FottView知识点

FottView知识点1、当我们的再UITableView中有一个头和尾,在使用过程中,会发现无论怎么设置宽度都没有办法改变,原来是这里的宽度无法改变解决的办法就是,我们自己弄一个XIB布局,通过这个XIB来充当就能改变

2015-01-12 09:41:22 363

原创 xib 学习

XIB文件学习重点:当XIB文件复杂了,我们对应的数据赋予就复杂了,那什么时候赋值成了问题,init方法不一定会调用,那什么时候一定会调用当一个对象重xib中创建初始化完毕的时候就会调用一次1、awakeFromNib 这个方法在xib对应的类中一定会调用,翻译过来是: xib醒来的时候2、UITableVIew 自定义cellXIB文件布局外层拖入什么,返回就是什么前辈总

2015-01-12 09:38:55 435

原创 UITableView数据刷新

UITableView数据刷新案例说明:点击对应的条目,然后弹出对话框,输入文字,可以修改对应条目的内容如何做到刷新呢? 原理是修改我们的模型,跟listview一样下面二个方法怎么理解呢?我们点击其中一行,会触发第一个方法didSelectRowAtIndexPath,当我们点击其他行的时候,前一次被点击的行会触发取消选中方法- (void)tableView:(UITableVie

2015-01-09 10:01:28 856

原创 汽车品牌案例:

UITableView性能优化方法的优化在每个子View中,都会返回,而IOS机制是每次到页面时才会显示,跟ListView是一样的,而IOS的机制是将每个子View存放缓存池中,缓存池会系统会帮我们创建,系统全自动,缓存池是UITableView内部自带,而因为有不同的子View,因此每个子View都有一个标识,这样不同类型的cell就却别开来1、通过一个标识去缓存池中寻找可循环利

2015-01-09 09:28:58 682

原创 UITableView性能优化

UITableView性能优化方法的优化在每个子View中,都会返回,而IOS机制是每次到页面时才会显示,跟ListView是一样的,而IOS的机制是将每个子View存放缓存池中,缓存池会系统会帮我们创建,系统全自动,缓存池是UITableView内部自带,而因为有不同的子View,因此每个子View都有一个标识,这样不同类型的cell就却别开来1、通过一个标识去缓存池中寻找可循环利

2015-01-08 11:28:38 312

原创 颜色知识学习

颜色知识的补充颜色分为24位和32位这二种,24位比32位少了开头的透明控制的#000000 24位#00000000 32位颜色的值取值从00-ff,因为是16位表示,因此最大就是f了常识1:#000000 表示黑色常识2:#ffffff 表示白色而根据RGB颜色表示值,24位表示中,每二个表示对应的一个颜色# 00 00 00 R G B这样很容易得出我们

2015-01-08 11:28:05 411

原创 UITableView常见属性汇总

UITableViewUITableViewDataSource协议//一共有多少组- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView//每组有多少行数据- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteg

2015-01-08 11:27:16 435

原创 IOS kvc是神马

KVC,即:Key-value coding,它是一种使用字符串标识符,间接访问对象属性的机制,它是很多技术的基础。主要的方法就两个,setValue:forKey,valueForKey在Programming Guide中说,使用KVC可以简化代码,但事实上使用起来,还是要看具体情况。代码实例:1.首先定义两个DataModel,这种DataModel定义是无法访问属性的[cpp]

2015-01-05 18:57:40 320

原创 UITableView设置单行高度

设置对应的单行的高度方法有二种第二种写法可以单独定义某行显示,每行高度不同采用第二种,相同采用第一种第一种直接拿到UITableView控件设置self.tabView.rowHeight = 60;//设置行号高度,这里设置是所有的第二种代理,通过拖线将UITableView的deleget给控制器@interface ViewController () - (CGFloat

2015-01-05 18:56:24 610

原创 UITableView 模型3, 单组(LOL的案例)

模型3(单组数据)ListView的展现形式#import "ViewController.h"#import "FLHero.h"@interface ViewController () @property (weak, nonatomic) IBOutlet UITableView *tabView;@property(nonatomic, strong) NSArray

2015-01-05 18:55:57 363

原创 代码技巧

小技巧:1、数组赋值cg1.cars = @[@"宝马", @"奔驰", @"奥迪"];数组赋值:NSArray *ary = @[@"A", @"B", @"C"];2、数组取值self.cars[0];3、初始化集合NSMutableArray *appArray = [NSMutableArray array];

2015-01-05 18:54:38 326

原创 IOS状态栏

IOS状态栏/** 这里控制状态栏颜色 */- (UIStatusBarStyle)preferredStatusBarStyle{}/** 是否隐藏状态栏 */- (BOOL)prefersStatusBarHidden{ return YES;}

2015-01-05 18:54:18 320

原创 UITableView

UITableViewUITableView分为二种样式:当我们设置的时候选择旁边的样式来区分不同1、UITableViewStylePlain 不分组2、UITableViewStyleGrouped 分组如何展示数据?1、UITableView需要一个数据源(dataSource)来显示数据2、UITableView会向数据源查询一共有多少行数据以及每一行显示什么数据等3、

2015-01-05 18:53:05 326

原创 代理模式

代理模式:当我们监听UIScrollView的滑动的时候,首先是将control中self写入到我们方法中,然后将当前类“遵守”(实现)我们协议,然后根据协议的要求,可以实现和不可以实现的方法,之后当我们的UIView做出相应的动作,我们的监听器就能监听到对应的方法,从而完成相应的动作,这就是我们的代理那转换成Android来理解就是:我们写了一个方法,然后方法的入参是一个接口,然后我们实现

2015-01-05 18:52:24 399

原创 对话框UIAlertView

对话框学习UIAlertView当一个control中有多个alertdialog的时候,绑定alertdialog的tag来区分不同的alertdialog#import "ViewController.h"@interface ViewController () - (IBAction)showAlertDialog;- (IBAction)showActionSheet;@

2015-01-05 18:52:02 323

原创 图片滚动器全部代码

新的问题:当页面有一个ScrollView的同时还有另外一个滑动的视图,二者不能同时进行,这里牵着到一个线程的概念,下面说解决方法:方法:提高线程的优先级--------------------------------------------------------------------------------------------------------图片滚动器全部代码:重

2015-01-05 18:51:29 308

原创 定时器

这里用到定时器,定时器,推荐使用二个类:NSTimer(应用)\CADisplayLink(小游戏)知识点:Timner重点:定时器一旦停止就没有用了,因此停止后,我们就清空///////////////////////////////////////////////////////- (void)scrollViewWillBeginDragging:(UIScrollView *)sc

2015-01-05 18:50:06 341

原创 UIScrollView 学习

UIScrollView 学习:重点:它有一个非常重要的属性,contentSize,只有设置了这个属性才能滚动补充:我们通常不会单独设置这个属性,而是通过代码获取其他属性然后赋值无法滚动常见原因:1、没哟设置contentSize2、scrollEnable = NO3、没有收到触摸事件:userInteractionEnable4、没有取消autolayout功能(要想scro

2015-01-05 18:48:58 362

原创 pageControl 就是广告栏下面的点点

图片滚动器新控件:pageControl 就是广告栏下面的点点知识点:分页 self.scrollView.pagingEnabled = YES;技巧:写代理的第二种方法是拖线完成

2015-01-05 18:48:13 405

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除