- 博客(45)
- 资源 (8)
- 收藏
- 关注
原创 Gvoice iOS接入
最近项目需要接入实时语音,然后就是接入的腾讯的Gvoice语音。 其实GVoice接入很简单把官方的demo下载,然后把APPID(gameID) 和 APPkey 替换,代码直接搬过来用就行了。1. 在这里值得一说的是,在接入语音遇到的问题,一个是测试的时候语音有回音,只需要把两台设备离远点就没有了。2.在GVoice开启Mic的时候可能导致程序崩溃,是因为设备没有开启权限。解决办法
2017-08-03 10:46:54
2265
原创 iOS 字典自动转模型
利用runtime写了一个字典自动转模型。虽然网上有很多的教程,但是还是根据自己的思路来写比较容易理解。主要思路就是,类型的判断。如果类型为数组则遍历,然后在判断遍历的数据的类型。直到遇到字典,然后循环字典的字段和模型的属性进行匹配复制。如果遇到有个id的字典。直接用xxxid代替就行了。github:https://github.com/eyesoffish/dicToModel
2017-05-27 11:18:12
337
原创 python 处理大量文件
事情还得从用python写爬虫开始说起,当时在freebuf看了几篇爬虫得文章,然后又遇到项目中要用很多图片,就现学现用在网上爬了很多图片下来。因为当时爬下来的都是表情的图片,所以前几天的时候本来想把爬下来的所有的表情图片添加到qq表情包里面的。结果每页表情最多放300多张,这就尴尬了。我爬的图片每个文件夹大部分都超过了300张。所以后来想用python把大量的图片分别放到不同的文件夹里面。好
2017-03-30 16:45:37
1499
原创 ios 多列表格
可能是一直忙着赶项目,所以已这个为借口很久都没有写博客了,今天突然看到一篇文章谈到写博客的重要性,才刚看了开头。我就已经意识到,应该不定时的写点儿什么东西出来。虽然平时对开发有做笔记。但是都没有整理成博客发表出来,整理的东西都是针对自己的项目当中的。不过应该还是有点儿帮助吧。在项目当中有个需要用到多列表格的东西。我以为tableView可以完成类似的功能。查了半天都没有搞定。所以最后决定自己用
2017-03-20 21:13:16
1275
原创 归档错误
libc++abi.dylib: terminating with uncaught exception of type NSException今天在写代码的时候,抛出这个错误。找了半天,都没有找到错误原因。最后终于发现原来是在归档的时候解码和编码的时候,类的属性类型不同。
2017-01-19 01:44:23
669
原创 .h file not found
BuildSetting -> Always Search User Paths -> YES not foundBuildSetting -> Header Search Paths -> usr/include/libxml2 或者查看你libxml文件在哪,然后设置路径为libxml的上级目录
2017-01-11 17:02:50
1532
原创 标签自动布局,搜索历史标签
最近有个需求要求写一个这样的效果。最开始打算自己写。然后整理了一下思路,并没有实现,脑瓜都快炸了。看了一下网上其他人的实现。感觉不是自己想要的。然后回家想了一个晚上。早上来终于搞定了。
2016-11-25 10:21:45
694
原创 iOS OC 涂鸦、画板
1.属性#import "drawView.h"#define SCREEN_SIZE self.frame.size@interface drawView()//每次触摸结束前经过的点用来连成线@property (nonatomic,strong) NSMutableArray *pointArray;//保存线条的数组@property (nonatomic,strong
2016-11-03 18:27:51
1542
原创 Object-c设置UITabBarController
object-c 设置UITabBarController类似这样的一个效果好了直接上代码1.添加子控制器- (void)viewDidLoad { [super viewDidLoad]; //添加所有子控制器 [self setupAllController]; //设置tabbar上面的内容 [self setupAllTabB
2016-10-28 11:57:46
418
原创 swfit扩展
//扩展,typealias别名 , mutating 修改了成员变量就用这个修饰struct Point{ var x = 0.0 var y = 0.0}struct Size { var width = 0.0 var height = 0.0 mutating func push(){ width = 2 }
2016-10-28 11:38:45
307
原创 下标的使用和运算符重载
/** * 下标的使用 */struct Vector3{ var x:Double = 0.0 var y:Double = 0.0 var z:Double = 0.0 //设置下标 subscript(index:Int) -> Double?{ get{ switch index{
2016-10-28 11:37:16
459
原创 swift协议、扩展
Equatable,Comparable//两个协议,重载等于。和比较运算符//CustomStringConvertible 重载输出语句class ship:CustomStringConvertible{ var description: String{ return "WIN:" }}//非零即为真,扩展协议。扩展协议可以被实现extension
2016-10-28 11:33:14
378
原创 iOS10 消息推送
//1.appdelegate注册通知- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { // Override point for customization after application launch.
2016-10-08 11:08:53
836
2
原创 RSA加密
#import @interface RSAEntry : NSObject/** * 加密方法 * * @param str 需要加密的字符串 * @param path '.der'格式的公钥文件路径 */+ (NSString *)encryptString:(NSString *)str publicKeyWithContentsOfFile:(NS
2016-08-26 11:20:44
596
原创 MobileVLCKit/MobileVLCKit.h框架播放rtmp视频
1.引入依赖库2.播放地址_dataArray = @[@"rtmp://live.hkstv.hk.lxdns.com/live/hks",@"rtmp://202.69.69.180:443/webcast/bshdlive-pc",@"rtmp://123.108.164.71/etv2/phd926",@"rtmp://122.202.129.136:1935/live/ch5
2016-08-09 16:09:16
5616
原创 ios与js交互
//1.js往oc传值var _login = function(mode){ document.location=$('uc').value+":"+$('up').value+":"+mode;}//js的点击事件传过来的值就是compents数组里面的值- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithReque
2016-07-22 17:36:35
287
原创 IOS 静态库生成
1.创建静态库工程,工程名字就随便取了啊2.创建好了之后工程会生成两个文件,其中.h文件将会被外部调用。然后我们来配置一下工程如图。因为我之前就是没有配置然后生成出来的静态库在被调用的时候就会报错(意思大概是不是amr7什么的。)3.将你的类或者依赖库拉进来。或者你直接新建一个controller也行。我这里是一个相机相册的类的封装。另外还有两个静态库,这两个静态库拉进来并
2016-07-19 16:02:40
246
原创 iOS利用GCDAsyncSocket发送语音,以及语音wav转码amr
1.新建工程天价pod文件target 'MyVedio' dopod 'CocoaAsyncSocket'end2.引入VoiceConvert音频转码文件(已上传)3.引入要用到的头文件#import "MyVedioController.h"#import #import #import #import "VoiceConvert/VoiceConverter.h
2016-06-16 17:06:53
3080
3
原创 SceneKit框架3D-object-c
1.引用框架创建两个全局变量#import @interface ViewController ()@property (nonatomic,strong) SCNScene *scene;//存放元素节点@property (nonatomic,strong) SCNView *sceneView;//用来展示3D图形的控件@end2.初始化sceneview,并且创建节点元
2016-06-07 10:42:43
1750
原创 swift+tableview+数据展示
1.自定义一个tableviewcell显示数据import UIKitclass MyTableViewCell: UITableViewCell { var name:String{ get{ return self.labelName!.text! } set{ self.l
2016-05-21 17:18:19
1326
原创 cordova+ios插件
cordova+ios 插件,首先你的现在cordova的环境。1.然后创建一个cordova的工程2.添加一个ios平台。cordova platform add ios。3.用xcode打开你创建的工程4.创建一个新的继承至CDVPlugin类的一个类5.给这个类添加一个方法。注意方法必须要有参数- (void) func:(CDVInrCommand *)command
2016-05-12 20:04:59
724
原创 NSOperation 和 GCD
GCD:仅仅支持先进先出原则(FIFO),不支持线程之间的依赖关系,但是GCD更接近底层执行效率更高。NSOperationQueue: 支持优先级,线程之间的依赖关系。而NSOperation是基于GCDGCD: //后台执行的线程 dispatch_async(dispatch_get_global_queue(0, 0), ^{
2016-03-22 10:11:24
263
原创 object-c第三方FMDB对sqlite使用
之前写过一篇基于c语言的sqlite的操作,后来发现自己都快要忘掉了。重新看了一下自己以前写的,发现基于c语言的用起来相比FMDB第三方还是要麻烦些其实麻烦也麻烦不到哪里去。主要是麻烦在查询数据的时候,c语言必须给定那一列,那一个字段。而fmdb得只需要给定字段就行了。其他操作还是大致相同都是,创建数据库,打开数据库,执行sql语句,关闭数据库。1.创建和打开数据库pod 'FMD
2016-03-22 09:04:16
645
原创 python爬取网页图片
之前一直在自己学pyhon,但是发现没有明确的目标。也不知道这门语言到底能干啥。于是果断放弃学习的念头了,学了一些基础。后来在freebuf开到python爬虫开发,真是感谢那位作者。我根据那几篇文章学会了怎么用python爬去网页上的图片。而且恰好我正在开发的项目需要大量的图片来支持后台数据。学以致用,这个是爬虫文章链接:http://www.freebuf.com/news/special
2016-03-17 22:04:02
785
原创 git使用
1.代码托管网站 https://coding.net/2.注册号之后创建项目3.拉入成员4.配置文件5.git项目 打开xcode——>Source Control—>check out——把复制好的内容填到下面的文本框中。下一步——>登录你的https://coding.net/的账号下载项目6.下载好了之后。把你用xcode创建
2016-03-17 13:20:43
199
原创 UIPopoverPresentationController用法
学的时候没有学过这玩意。用到的时候,我在网上找的资料试着调试了一下没有调试出来。。我也是醉了。只好请教我们老师帮我调试出来。根据我的理解差不多就这样:1.弹出视图控制器是控制器本身自带的一个属性,所以在用的时候不需要实力化。2.弹出视图控制器需要两个控制器,一个用来触发弹出控制器事件。一个用来做弹出控制器代码://这个方法是通过一个通知事件来触发的。也可以通过其他事件触发。se
2016-03-17 12:47:08
4973
1
原创 IOS runtime运行时
object-c Runtime动态运行时。相当于程序在执行某个方法或者事件的之前可以用运行时来做一些事情。其实就是几个方法。首先得引入c语言的底层的类#import 1.第一件属性关联——属性关联也就是当我们在用第三方获取其他的库的时候,添加类目不能满足我们的逻辑需求的时候。我们就可以利用动态运行时来添加一个属性。 /** * 参数意义1.被关联的对象,2.关联对象的标
2016-03-11 11:09:59
582
原创 object-c操作数据库sqlite3
sqlte3总结/** * 数据库使用步骤 1.sqlite3_open打开数据库 2.sqlite3_exec或者sqlite3_prepare操作 其中sqlite3_prepare操作需要有对应的句柄 3.使用完之后需要关闭句柄sqlite3_fubakuze 4.而句柄查询的第一条数据由sqlite3_colume来进行具体字段查询 5.sqlite3_close 关闭数据库 */
2016-03-04 11:05:42
1376
原创 object-c图形绘制总结
图形绘制:直线,贝塞尔曲线,多边形,圆形,扇形1.绘制图形最开始我们要做的是:CGContextRef ctx = UIGraphicsGetCurrentContext();//获得当前的上下文CGContextSaveGState(ctx);//保存空白图形到上下文栈2.开始绘制//拼接路径绘制直线 CGContextMoveToPoint(ctx, 100, 100);
2015-12-16 09:37:50
1210
原创 object-c 基础动画的学习总结
动画:平移,旋转,缩放缩放://创建动画对象 CABasicAnimation *animation = [CABasicAnimation animation]; animation.keyPath = @"bounds";//缩放动画类型 animation.keyPath = @"position";//平移动画类型 animation.fromValue
2015-12-16 09:19:41
608
原创 object-c画笔的简单实现
画笔简单实现。之前也是对这个一点儿概念也没得,然后在网上找了一个列子。就明白了。思路。主要是调用两个方法。就是触摸拖动和触摸拖动结束的方法。1.触摸拖动方法里面:将所有触摸的点获得,放到一个数组里面,然后再绘制每一个点。2.触摸拖动结束:将所有点数组放到新的一个数组里面。然后将存点的那个数组清空掉。不然你画得所有线条都是相连的。具体来看看代码:1.添加两个数组//每
2015-12-16 08:40:49
822
原创 object-c之音频视频的播放
1.播放视频。首先要引入关于音频和视频的框架#import #import 2.初始化播放器准备播放//初始化 self.player = [[AVPlayerViewController alloc]init]; //设置播放内容 NSString *filePath = [[NSBundle mainBundle]pathForResource:@"宣传资
2015-12-05 12:34:24
1108
原创 object-c之自定义UITableViewCell控件的继承和数据的封装
实现自定义UITableViewCell的多继承,省了我们大量的代码。
2015-12-03 16:58:50
819
原创 object-c之UITableView的数据索引控件UISearchController
OC,UITableView结合UISearchController实现数据筛选
2015-12-01 19:13:49
311
原创 object-c之时间选择器UIDatePicker和UIpickerview筛选器
1.选说说简单的时间选择器- (UIDatePicker *) datePicker{ if(!_datePicker) { _datePicker = [[UIDatePicker alloc]init]; _datePicker.center = CGPointMake(180, 300); //设置时区 _
2015-11-29 10:59:04
570
原创 object-c之UItableView下拉刷新
UItableView是继承UIScrollView的所有有些功能都是自己本来就有的不需要我们去写,我们要做的就是调用他得代理方法,来完成我们的工作。这个是实现下拉刷新的,刷新一次次uitableVIew里面会增加一个时间字符串,这个字符串是保存再一个可变数组里面在。所以思路还是比较简单的
2015-11-29 10:33:05
526
swift_PM25_Map
2016-05-26
基于asp.net的图书管理系统设计实现
2015-11-17
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人