- 博客(47)
- 资源 (2)
- 收藏
- 关注
转载 My password
机器码 时间 水印内容 允许播放编号 禁止播放编号 播放密码8a344ec276ed2d1948a86e59d8d234652f77ca2b8a66f460ce0ba909520400655cc6a8e0cd2dad43f6dcf4063140d5140f0fe1fbdcd91d5bd52eafa22c5baab3523094cc6780d70d00d1b5a1fa55b6b7
2015-08-31 19:15:30 880
原创 UICollectionView 和 UIKit
1.UICollectionView http://www.devdiv.com/iOS_iPhone-ios_uicollectionview_-thread-128378-1-1.html http://www.devdiv.com/iOS_iPhone-ios_uicollectionview_circlelayout-thread-128893-1-1.html http://objc
2015-08-30 20:10:04 493
原创 C++11 -----从lambda说起
Lambda表达式看了孟岩大大的一篇blog(http://blog.csdn.net/myan/article/details/5877305),偶决定先学一些主线内容:①lambda表达式②function/bind③右值引用本篇记录lambda表达式的应用:Why Lambda:Lambda表达式其实偶以前也接触过,只是一直用VS2005很少使用。某个大大
2015-02-14 18:49:47 747
原创 2015-1-31
#import "HMViewController.h"#define global_queue dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0)#define main_queue dispatch_get_main_queue()@interface HMViewController ()@property
2015-01-31 17:31:03 479
原创 【深入浅出IOS开发】重写按钮控件2
对这里的内容进行第二次封装:http://blog.csdn.net/ayaseeli/article/details/42204397#import "MJTabBar.h"#import "MJTabBarButton.h"@interface MJTabBar()/** * 记录当前选中的按钮 */@property (nonatomic, weak) MJT
2015-01-17 14:56:56 767
原创 【深入浅出IOS开发】彩票-NavigationController
// 判断是否为iOS7#define iOS7 ([[UIDevice currentDevice].systemVersion doubleValue] >= 7.0)①+ (void)initialize 系统在第一次使用这个类的时候调用(1个类只会调用一次)+ (void)initialize{ // 1.设置导航栏主题 UINavigation
2015-01-17 14:51:21 639
原创 【深入浅出IOS开发】彩票-状态栏的设置
1.程序启动时隐藏状态栏2.程序启动完毕后再显示回状态栏(前提是状态栏交给了UIApplication管理)application.statusBarHidden = NO;
2015-01-17 14:36:45 540
原创 【深入浅出IOS开发】彩票-按钮中图片的拉伸
①UIImaegView的图片拉伸可以通过storyboard或者xib设置②UIButton不能通过storyboard或者xib设置,必须通过代码#import @interface UIImage (Extension)+ (UIImage *)resizableImage:(NSString *)name;@end#import "UIImage+Extensi
2015-01-17 14:24:42 708
原创 【深入浅出IOS开发】彩票-重写按钮控件
①创建子类继承UIButton,然后关联相应的UIButton控件②重写initWithCoder 和 initWithFrame里面设置同样的代码,确保不管是通过代码还是xib,storyborad来创建Button都会执行③重写titleRectForContentRect和imgeRectForContentRect#import "MJTitleButton.h"#impor
2015-01-16 00:01:56 958
原创 【深入浅出IOS开发】彩票-代理实现子Controller的切换
知识点一览:①TabBarController中通过设置selectedIndex来完成子控件的切换②自定义UIButon,重写 setHighLighted可以在多次点击按钮时候不会重新设置高亮③重写UITabBar的layOutSubViews可以设置控件的内部的元素的布局。④UIControllEventTouchDown 按钮只要点击就触发事件。重点:⑤代理实现子C
2014-12-28 00:48:44 1004
原创 【深入浅出IOS开发】1.面搭建-彩票
实现如下功能:①自定义TabBarController中的TabBar②点击TabBar中的按钮会变高亮,其他的正常。③点击TabBar中的按钮,里面的子控制器切换如图:头文件#import @interface MRTabBarViewController : UITabBarController@property (nonatomic,weak) UIBu
2014-12-26 23:07:22 662
原创 【深入浅出IOS开发】截取屏幕到文件中
在这里首先明确,View中显示的东西都在在layer中的。我们通过renderInContext来渲染layer中的内容- (void)viewDidLoad { [super viewDidLoad]; //截取当前的View //1.创建图层 UIGraphicsBeginImageContextWithOptions(self.view.frame.s
2014-12-25 21:18:46 751
原创 【深入浅出IOS开发】图形的裁剪
我们要做出以下的效果:①这里我们要新建一个图层②得到图层的设备上下文③在图层中绘制一个大圆,然后渲染到图层④然后绘制一个小圆,剪切,然后渲染到图层⑤绘制图片图层中⑥然后从当前图层中获得图片,显示到View中- (void)drawRect:(CGRect)rect{ UIImage *imageBackground = [UIImage imageNa
2014-12-25 20:37:34 1061
原创 【深入浅出IOS开发】Xcode6中如何设置分类
Xcode6 中可以通过以下方式创建分类:以下是给一个UIImage添加Logo的分类#import @interface UIImage (MJ)+ (instancetype)waterImageWithBg:(NSString *)bg logo:(NSString *)logo;@end#import "UIImage+MJ.h"@impl
2014-12-25 15:32:01 712
原创 【深入浅出IOS开发】设置图片水印
设置图片水印的本质就是将两张图片混合成一个图片。可以通过以下步骤来进行设置;①创建一个基于位图的上下文(开启一个基于位图的上下文)void UIGraphicsBeginImageContextWithOptions ( CGSize size, BOOL opaque, CGFloat scale )size表示图层的大小,一般设置成背景图的大小opaque表示是否透明:YE
2014-12-25 14:59:33 1367
原创 【深入浅出IOS开发】在UIView中设置动画
#import "MSnowView.h"@interface MSnowView()@property (nonatomic, assign) CGFloat snowY;@end@implementation MSnowView- (void)awakeFromNib{ //刷新比较频繁的时候用这个 CADisplayLink *link = [CADisplayL
2014-12-25 13:35:08 721
原创 【深入浅出IOS开发】使用路径进行绘制图形
①创建路径: CGMutablePathRef pathLine =CGPathCreateMutable();②在路径上绘制图形:CGPathMoveToPoint(pathLine,NULL, 0,0); CGPathAddLineToPoint(pathLine,NULL, 100,100);③将路径添加到设备上下文中CGContextAd
2014-12-24 23:58:53 591
原创 【深入浅出IOS开发】刷帧或者叫做重绘
这里要实现一个UIView,UIView中有一个圆。圆的半径通过UISlider来改变。①在ViewController中通过连线,添加UISiler的方法和MRView的成员变量。在UISlider方法中:self.circleView.radius = sender.value;②然后再MRView中绘制圆形,通过在setRadius里重绘来设置图形的变化
2014-12-24 23:22:30 1093
原创 【深入浅出IOS开发】图片剪切
我们常常需要将一个方形图片剪切成圆形,或者从某个大图里面获得一部分,这些时候我们通常用剪切。裁剪相当于一种属性,减掉前面绘制的图形以外的区域。所以我们裁剪过之后通常要恢复以前的绘图状态此时我们一般分以下三步:①保存当前的上下文状态 CGContextSaveGState(ctr);②在绘制好一些区域以后,进行裁剪 CGContextClip(ctr);③恢复裁剪
2014-12-24 22:58:32 1171
原创 【深入浅出IOS开发】图形上下文栈
图形上下文栈通过一种栈的形式保存的绘制格式。可以方便我们在设置过绘制格式之后,进行恢复。 ①开始绘制之前,保存设备上下文 CGContextSaveGState(ctr); ②渲染之后,恢复设备上下文 CGContextRestoreGState(ctr);//图形上下文栈void drawLine(CGRect rect, CGContextRef ctr)
2014-12-24 22:56:22 1356
原创 【深入浅出IOS开发】绘制一个小黄人
①首先绘制一个身体绘制身体的时候要分上中下三段,先设置坐标和长度,然后带入相应的函数中。一般圆形和弧形用圆心设置②绘制一个人的嘴型绘制嘴的时候要点是:通过贝塞尔曲线CGContextAddQuadCurveToPoint绘制。贝塞尔曲线分三个点:起始点,控制点,结束点我们通过控制点来约束起始点(CGContextMoveToPoint),和结束点。//绘制身体void
2014-12-24 22:40:01 784
原创 【深入浅出IOS开发】绘制文字
绘制文字通常分三步走:①创建字符串对象②设置字体格式③通过NSString方法绘制到View中//绘制文字void drawStr(){ //1.创建绘制文字 NSString *str = @"I Love Ranran"; //2.设置字体格式 NSMutableDictionary *dict = [NSMutableDictionary
2014-12-24 22:33:00 819
原创 【深入浅出IOS开发】绘制图片
绘制图片分两步走:①要加载图片②通过图片对象进行绘制drawInRect 和 drawAtPoint//绘制图片void drawImage(CGRect rect){ //1.加载图片 UIImage *imageOne = [UIImage imageNamed:@"1"]; // NSLog(@"%@",self); //2.绘制图片到vie
2014-12-24 22:23:49 764
原创 【深入浅出IOS开发】IOS绘图基础
1.绘图的常用步骤①获得设备上下文CGContextRef ctr = UIGraphicsGetCurrentContext();②在设备上下文绘图CGContextMoveToPoint(ctr, 10, 10); CGContextAddLineToPoint(ctr,50, 50);③渲染到相应的ViewCGContextFillPath
2014-12-20 08:01:38 565
原创 【深入浅出IOS开发】创建Model类型Controller
①在Appdelegate.m中实现以下代码:- (IBAction)model:(UIButton *)sender{ MRViewControllerTwo *vcTwo = [[MRViewControllerTwo alloc]initWithNibName:@"MRViewControllerTwo" bundle:nil]; UINavigationControll
2014-12-19 00:12:21 966
原创 【深入浅出IOS开发】UITabBarController和UINavigationController混合使用
主要通过Storyb来设置界面,很少编码,有以下几点注意的事项。1.通过Images.xcassets来设置AppIcon和LaunchImage图标2.通过设置好一个TableViewCell,然后拷贝成相同的TableViewCell可以简化工作。3.如果要隐藏ViewController中的TabBar可以使用
2014-12-19 00:03:04 532
原创 【深入浅出IOS开发】UITabBarController简介
很多应用都是使用UITabBarController来完成的,本文主要讲解如何使用UITabBarController创建一个简单的应用:实现代码: UITabBarController *tb = [[UITabBarController alloc]init]; self.window.rootViewController = tb; UIVie
2014-12-18 23:44:49 552
原创 【深入浅出ios开发】存储一般的数据对象
一般通过NSKeyedArchiver来存储一般的对象:重点在encode和decode存储数据:- (IBAction)save:(id)sender { MrPerson *person = [[MrPerson alloc]init]; person.name = @"Ranran"; person.age = 16; person.h
2014-12-18 23:34:33 519
原创 【深入浅出ios开发】偏好设置
每个应用都有个NSUserDefaults实例,通过它来存取偏好设置保存数据:- (IBAction)save:(id)sender { NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; [defaults setObject:@"Ranran" forKey:@"name"];
2014-12-18 23:31:32 526
原创 【深入浅出ios开发】数据存储-----XML属性列表(plist)归档
①存储数据:1.获得home路径:NSString *home = NSHomeDirectory();2.通过home路径获得Documents/xxx.plist路径3.往相应的路径写数据- (IBAction)save:(id)sender { NSString *home = NSHomeDirectory(); NSLog(@"%@",home);
2014-12-18 23:00:13 861
原创 【深入浅出ios开发】使用代理进行传值
一般在ios开发中通过segue过度进行传值,有些时候可能不行,例如两个UIviewcontroller之间相互传值。这时候我们一般通过代理来进行传值。由于自己是C++出身,对设计模式也有所了解,这里就简单的用个实例来讲解代理模式如何通过代理进行传值。某公司接到一个项目,于是项目经理开始写计划,然后进行软件的基本架构。这时候他发现自己一个人无法在预定的时间里完成这个软件。于是他就开始招人,
2014-12-07 22:58:34 653
原创 【深入浅出ios开发】UIStoryboardSegue详解
一个UIStoryboardSegue对象负责执行两个试图控制器之间的视觉过渡。另外,segue对象通常用来准备从一个控制器过渡到另一个控制器。segue对象包含了涉及过渡的控制器的信息。当segue被触发,并且在视觉过渡发生之前,正在运行的storyboard调用当前的视图控制器的prepareForSegue:sender:方法从而可以传送任何将要展示的必须数据到下一个视图控制器。
2014-12-06 21:15:11 1285
原创 【深入浅出IOS开发】Info.plist常见的设置
①建立一个工程后,会在Supporting files文件夹下看到一个“工程名-Info.plist”的文件②常见属性(红色部分是用文本编辑器打开时看到的key)Localiztion native development region(CFBundleDevelopmentRegion)-本地化相关Bundle display name(CFBundleDispl
2014-12-05 15:29:56 793
原创 【深入浅出IOS开发】Xcode6如何设置storyboard中Controller的开始箭头
Xcode 6中拖出一个Controller发现里面没有了开始箭头,于是可以通过设置属性。然后就会发现里面的Controller前面有了开始箭头
2014-12-05 15:02:33 2273
原创 【深入浅出ios开发】UIActionSheet
①本想花点时间来讲解这玩意的。不过看到了官方文档立马放弃了。https://developer.apple.com/library/ios/documentation/UIKit/Reference/UIActionSheet_Class/重要的:UIActionSheet已经被IOS8所抛弃。(UIActionSheetDelegate也被摒弃了)如果想闯将并且管理action sh
2014-12-05 14:49:25 596
原创 【深入浅出ios开发】NSNotificationCenter
我们经常要监听消息,监听消息一般有三种方法:第一种用控件的addtarget来监听消息。第二种通过delegate来监听消息。这里我们讲解用NSNotificationCenter来监听消息。这里有详细的文档:
2014-12-05 10:11:02 775
原创 【深入浅出IOS开发】UIViewController详解
视图控制器用来创建并且管理新的View,我们一般可以通过三种方式来创建UIViewController:①通过代码来创建②通过UIStoryboard来创建③通过xib来创建
2014-12-04 17:06:26 891
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人