自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

青山绿水之辈 专栏

成大事者,不惟有超世之才,亦有坚忍不拔之志。

  • 博客(658)
  • 资源 (6)
  • 问答 (1)
  • 收藏
  • 关注

原创 第四十七篇:实现 服务端 与 客户端 之间 Socket 即时通讯

QJWebSocketDome简介本 Dome 基于 Socket框架, 主要的功能就是即时通讯功能,创建房间,并与发送信息给所有在房间内的客户端,与QQ群相似,群的人数可以是’>’=2个人在房间内。 Socket 即时通讯的 服务端 与 客户端 dome使用过程1、启动 Socket 服务器 node 01-搭建socket服务器.js2、打开 socketClientDome 工程,

2017-09-08 22:48:16 898

原创 第四十六篇:MAC下使用 Node.js 实现一个 WebServer 服务器

引序:Node.js 采用一系列“非阻塞”库来支持事件循环的方式。Node.js是一个服务器端 JavaScript 解释器 , 也就是说 Node.js 是一个支持 JavaScript 语法编写服务器代码的环境。 // 代码在 github 上的链接 QJWebServerDome 的 git 地址在这里在MAC下用命令安装 Node.js安装 Homebrew ruby -e

2017-09-08 18:50:36 5381

原创 第四十五篇:ReactiveCocoaObjC使用

引导:首先如果要使用 ReactiveCocoaObjC 第三方框架就先需要导入该框架,我导入时使用了 cocoapods 导入的,在 podfile 文件中输入以下的内空:use_frameworks!target 'ReactiveCocoaDome' do pod 'AFNetworking', '~> 3.0.4' pod 'ReactiveObjC', '~> 3.0.0'e

2017-08-27 21:40:01 2991

原创 MAC 下 CocoaPods 安装与使用来管理项目第三方框架

一、CocoaPods 安装前言:思考如何引入一个第三方框架。 例如: 百度地图SDK、友盟、ShareSDK、 信鸽推送等。从github或某处下载第三方SDK工程中导入所需要的SDK的文件 .a 或 .framework添加SDK文件所依赖的系统的.framework。比如:需要导入SystemConfiguration.framework、CoreLocation.framework、UIK

2017-08-18 14:38:44 7074

原创 MAC安装 Carthage 工具来管理项目从 github上下载第三方框架

一、Carthage 安装第一步:打开终端,输入以下其中的一个命令行安装 Carthage // 更新 Carthage ,如果没有安装时这行命令会自动安装 brew update // 这个是直接安装命令行 brew install carthage 注意:如果在输入上面的命令行后出现错误:Error: /usr/local must be writable! 解

2017-08-17 18:19:53 2532

原创 第四十四篇:iOS使用 runtime 与 响应式编程 KVO 原理

响应式编程 KVO 的原理1.简单实现 KVO功能一开始 self.person 的 isa 指针类型为 Person,当控制器被触摸时 self.person.age += 1 (调用了 Person 类的 setAge: 方法), 然后会调用监听方法,如下:-(void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)obje

2017-08-16 22:05:31 570

原创 第四十三篇:iOS链式编程Block

链式编程可以用点语法调用对象方法 如self.add(22).add(22).add(22);示例如下@interface ViewController ()@property (nonatomic , assign) NSInteger totale ;@endtypedef ViewController *(^ADDBlock)(NSInteger);@implementation View

2017-08-16 15:02:22 343

原创 IOS 错误信息集及解决问题

1. 今天上传包到 AppStore 时遇到了 ERROR ITMS-90034: "Missing or invalid signature........." 这个错误,之前钥匙串里证书过期了,就把所有的证书都设置为始终信任,于是改回为系统默认之后,再次提交成功了.

2017-08-10 20:04:37 421

原创 突然想到一道简单题,但也有深意!!

给出一个 n 第一个解法,费时:long long sum = 0 ; for (int n = 1; n <= 1000000000; n++) { if (n%3 == 0 || n%5 == 0) { sum += n ; } } printf(" %lld\n", sum);第二个解法,高

2017-08-03 23:25:08 635 4

原创 第四十二篇:IOS 的 sqlite3 一些基本使用

一、sqlite3 使用操作       前提:在项目中导入 libsqlite3.0.tdb 数据库。1.sqlite3 相关一些基本函数用法:1.1、打开数据库SQLITE_API int sqlite3_open( constchar *filename, /* Database filename (UTF-8) */ sqlite3 **ppDb

2017-06-23 11:29:47 2066

原创 第四十一篇:微信第三方登录

登录前效果图:登录后效果图:一、准备工作第一步:下载友盟SDK,下载友盟SDK 根据需要选择下载,下载完成后把 UMSocial 文件添加到工程中;第二步:添加配置,在 Build Settings --> Linking --> Other Linker Flags --> Debug 或 Release 对应的行后加入-ObjC ,注意不要写为-Objc

2017-06-15 16:54:48 1198

原创 第四十篇:GCD 多线程

一、Operation Objects1、相关类1)NSOperation 基类:        基类,用来自定义子类 operation  object 。继承 NSOperation 可以完全控制 operation object 的实现,包括修改操作执行和状态报告的方式。2)NSInvocationOperation:       可以直接使用的类,基于应用的一个

2017-06-14 14:44:16 1469

原创 第三十九篇:IOS核心高级动画 Core Animation、Core Graphics

一、 CALayer 图层:1. 图层属性及功能介绍:1)contents :id 类型, 内容显示。 在ARC环境下使用: = (__bridge id)image.CGImage; 在MRC环境下使用:去掉(__bridge id)2)contentsGravity:字符串型,图层的内容模式。功能与UIView 的contentMode用法相同;比如内容居中显示

2017-06-12 15:35:21 2725

原创 第三十八篇:CAKeyframeAnimation--+CAShapeLayer+UIBezierPath用法,关键帧动画

有个很关键的属性:rotationMode// 把rotationMode设置=kCAAnimationRotateAuto根据曲线的切线自动旋转    keyframeAnimation.rotationMode =kCAAnimationRotateAuto ;//// ViewController.m// CAKeyframeAnimation--+CAShape

2017-03-24 21:14:38 1053

原创 第三十七篇:触摸事件

1.iOS中的事件•在用户使用app过程中,会产生各种各样的事件iOS中的事件可以分为3大类型           触摸事件                                          加速计事件                                    远程控制事件2.响应者对象•在iOS中不是任何对象都能处理事件

2015-11-04 19:32:53 1517 1

原创 第三十六篇:发送方式与真机调试过程

1.打电话:》打电话-方法1•最简单最直接的方式:直接跳到拨号界面NSURL *url= [NSURLURLWithString:@"tel://10010"];[[UIApplication sharedApplication] openURL:url];•缺点电话打完后,不会自动回到原应用,直接停留在通话记录界面》打电话-方法2•拨号之前

2015-11-04 18:35:51 1604

原创 第三十五篇:Quartz2D绘图--小黄人

在一个UIView上画图:代码://// QJView.h// 14-(2)画小黄人//// Created by 瞿杰 on 15/10/27.// Copyright © 2015年 itcast. All rights reserved.//#import @interface QJView : UIView@end//// QJView

2015-10-28 12:40:21 1450

原创 第三十四篇:Quartz2D绘图

Quartz2D在iOS开发中的价值•自定义view(自定义UI控件)2.图形上下文1)图形上下文(Graphics Context):是一个CGContextRef类型的数据2)图形上下文的作用Ø保存绘图信息、绘图状态Ø决定绘制的输出目标(绘制到什么地方去?)(输出目标可以是PDF文件、Bitmap或者显

2015-10-27 19:30:49 1280 5

原创 第三十三篇:私人通迅录(有存储功能)

用了第三方框架:MBProgressHUDMain.storyboard:登陆页面://// QJLoginViewController.h// 13-私人通迅录//// Created by 瞿杰 on 15/10/9.// Copyright © 2015年 itcast. All rights reserved.//

2015-10-24 20:05:19 2006

原创 最小堆排序

#includeconst int INF = 0x7fffffff;void exchange(int &a,int &b){ int tmp; tmp = a; a = b; b = tmp;}void heapFrist(int *array,int k,int len){ if(array == NULL || k <=0 || le

2015-10-12 00:58:20 691

原创 第三十二篇:数据存取

1.iOS应用数据存储的常用方式lXML属性列表(plist)归档lPreference(偏好设置)lNSKeyedArchiver归档(NSCoding)lSQLite3lCoreData2.应用沙盒》位置:/Users/用户名/Library/Developer/CoreSimulator/Devices如果不知道在哪里,可以在项

2015-10-10 17:50:54 1236

原创 第三十一篇:UIView常用属性与方法

@interface UIView : UIResponder/** * 通过一个frame来初始化一个UI控件 */- (id)initWithFrame:(CGRect)frame;// YES:能够跟用户进行交互@property(nonatomic,getter=isUserInteractionEnabled) BOOL userInteractionEnabled;

2015-10-07 19:01:33 740

原创 第三十篇:控制器的生成与多控制器的管理

1.如何创建一个控制器》控制器常见的创建方式有以下几种:Ø通过storyboard创建Ø直接创建QJViewController *vc = [[QJViewControlleralloc] init];Ø指定xib文件来创建> QJViewController *vc = [[QJViewControlleralloc] initWithNibName:@"Q

2015-10-07 18:47:50 1304

原创 第二十九篇:UIPickerView简述与代码练习

一.UIPickerView1.UIPickerView的常见属性// 数据源(用来告诉UIPickerView有多少列多少行)@property(nonatomic,assign)id dataSource;// 代理(用来告诉UIPickerView每1列的每1行显示什么内容,监听UIPickerView的选择)@property(nonatomic,assign)

2015-10-06 13:40:14 839

原创 第二十八篇:程序启动原理

1.Info.plist常见的设置》建立一个工程后,会在Supportingfiles文件夹下看到一个“工程名-Info.plist”的文件,该文件对工程做一些运行期的配置,非常重要,不能删除》在旧版本Xcode创建的工程中,这个配置文件的名字就叫“Info.plist”》项目中其他Plist文件不能带有“Info”这个字眼,不然会被错认为是传说中非常重要的“Info.plist”

2015-10-05 21:13:31 1488 1

原创 第二十七篇:QQ好友列表,UITableViewHeaderFooterView用法

1.设置tableView的headerView注要以下几个:#pragma mark - tableView代理方法- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section{ // 取得一个自定义的 headerView QJHeaderView * hea

2015-10-04 14:32:02 1993

原创 第二十六篇:通知中心 NSNotificationCenter

1.通知中心(NSNotificationCenter)•每一个应用程序都有一个通知中心(NSNotificationCenter)实例,专门负责协助不同对象之间的消息通信•任何一个对象都可以向通知中心发布通知(NSNotification),描述自己在做什么。其他感兴趣的对象(Observer)可以申请在某个特定通知发布时(或在某个特定的对象发布通知时)收到这个通知2.通

2015-10-02 20:41:08 1056

原创 第二十五篇:QQ聊天界面

UIImage:》1.对于一张图片拉伸方法:   1.1.得先拿到一张图片img;   1.2.再跟据img的size 分出四根线(top,left,bottom,right)大小,那么四周的图片不会被拉伸,中间的会被拉伸。   1.3.调用以下的方法,参数:UIEdgeInsetsMake(top,left,bottom,right);  UIImageResizingMod

2015-10-02 18:50:16 2017 2

原创 第二十四篇:缩合练习代码---简单微博(自定义Cell)

1.效果图:2.写出的详细步骤:(1)向Main.storyboard里的控制器中添加一个UITableView控件。(2)ViewController类遵守两个协议(UITableViewDataSource , UITableViewDelegate),并使tableView属性与UITableView控件连线,设置当前控制器成为tableView的数据源对象和代理对象,实

2015-09-30 21:47:04 990

原创 第二十三篇:UITableView,UIScrollView,NSTimer,UIButton综合应用代码---团购

效果图:Model://// QJTg.h// 08-团购//// Created by 瞿杰 on 15/9/29.//#import @interface QJTg : NSObject@property (nonatomic , copy)NSString * icon;@property (nonatomic , copy)NSStri

2015-09-29 21:01:46 887

原创 第二十二篇:UITableView练习代码

车的品牌展示:// Car.h// 07-UITableView练习-Car//// Created by 瞿杰 on 15/9/28.//#import @interface Car : NSObject@property (nonatomic,copy)NSString * icon;@property (nonatomic,copy)NSString * na

2015-09-28 19:02:49 791

原创 第二十一篇:UITableView的基本使用

1.如何展示数据》UITableView需要一个数据源(dataSource)来显示数据》UITableView会向数据源查询一共有多少行数据以及每一行显示什么数据等》没有设置数据源的UITableView只是个空壳》凡是遵守UITableViewDataSource协议的OC对象,都可以是UITableView的数据源2.tableView展示数据的过程(

2015-09-27 17:28:08 1418 5

原创 第二十篇:滚动视图UIScrollView ,分页控制器UIPageControl 定时器 NSTimer

1.什么是UIScrollView:•移动设备的屏幕大小是极其有限的,因此直接展示在用户眼前的内容也相当有限••当展示的内容较多,超出一个屏幕时,用户可通过滚动手势来查看屏幕以外的内容••普通的UIView不具备滚动功能,不能显示过多的内容••UIScrollView是一个能够滚动的视图控件,可以用来展示大量的内容,并且可以通过滚动查看所有的内容2.UI

2015-09-26 16:36:46 1102

原创 第十九篇:猜图游戏UI完整代码

QJQuestions.h文件:// QJQuestions.h// 04-猜图游戏//// Created by 瞿杰 on 15/9/23.//#import @interface QJQuestion : NSObject@property (nonatomic , copy)NSString * icon;@property (nonatomic , cop

2015-09-24 20:05:38 1774

原创 第十八篇:UI编程练习

汤母猫://// ViewController.m// tomCat//// Created by 瞿杰 on 15/9/20.//#import "ViewController.h"@interface ViewController ()@property (weak, nonatomic) IBOutlet UIImageView *tomCat;- (IB

2015-09-20 19:17:45 862

原创 第十七篇:计算代码行数练习代码

用到Foundation中的一些类:NSManagerNSStringNSArray//// main.m// 10-计算代码行数//// Created by xxx on 15/9/16.// Copyright (c) 2015年 itcast. All rights reserved.//#import int countLineOfFile(

2015-09-16 11:23:22 1301

原创 第十六篇:OC中的Foundation框架练习

Foundation框学习推存博客:// Fundation#import // 14. 自定义一个Ball类,有一个颜色属性(只有黑色和白色)。typedef enum _BallColor{ BallColorRed, BallColorBlack,}BallColor;@interface Ball : NSObject@property

2015-09-15 21:48:26 1501

原创 第十五篇:OC中 分类,关键字protocol 协议的声明与应用

1. 协议的定义:》协议就是用来声明一大堆方法的。@protocol 协议名称 // 方法声明列表..........@end2. 如何遵守协议 :》类遵守协议,本类就会拥有它遵守的协议所有的方法:@interface 类名 : 父类名  ............. // 类的声明@end》协议遵守协议,本协议就会拥有其他协议所有的方法:

2015-09-14 22:05:57 1707 2

原创 第十四篇:OC中block存储代码块的定义与应用

1.如何定义block变量,形式:返回值类型 (^block变量名)(参数)》形式一求和的block变量: int (^sumBlock)(int , int ) ;》形式二:void (^voidBlock)() ;2.如何利用block封装代码: ^(int a , int b) {   return a + b ;}  ; // 有一个分号“ ; ”

2015-09-14 20:14:33 1702

原创 第十三篇:ARC自动引用计数器原理

1.指针分2种:》强指针:默认情况下,所有的指针都是强指针 __strong。》弱指针:__weak。说明:当一个弱指针指向一个创建出来的对象,而之后没有强指针指向该对象,那么该对象会在内存中被释放,弱指针被赋值成空 nil 。   代码表现形式:      Dog * p1 = [ [Dog alloc] init ] ; // p1 为强指针,指向新创建出来的对象,引用计数器

2015-09-13 23:56:25 951 1

代码行数统计工具

代码统计工具,在上面你可以选择一个代码文件夹,然后再进行代码统计,就可以知道你以前写过的所有代码,一共有多少行代码

2014-04-04

最短路Floyd算法

在计算有环有方向的最短路时,可以用Floyd算法计算出任意两点之间的最短路!

2014-04-04

刘汝佳的黑书

黑书对于每个编程人员来讲,都是有必要去看的,里面的很多算法都是非常的红典,从中可以学到很多我们在书本上学不到的东西!

2014-04-04

背包九讲算法

背包九讲里面讲述了九种不同的背包类型,对于想学背包的人来说,这是一个不错的选择!

2014-04-04

C++写程序时用到的库函数

C++库函数里面描术了很多函数的名字和相应的功能,在写程序时可以很方便的进行调用!

2014-04-04

汇编DOS-MASM615

汇编安装包:如果想写汇编程序时,先安装些包,然后就可以在DOS下编程

2014-04-04

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

TA关注的人

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