- 博客(25)
- 资源 (35)
- 收藏
- 关注
原创 ios通过webrtc实现微信的视频对讲功能
微信的视频对讲主要是通过webrtc中点对点的形式实现的(也就是p2p),主要的原理如下图:实现是站在巨人的肩膀上实现的:https://github.com/Xianlau/WebRTC_Demo运行的效果如下:
2022-04-19 16:15:11
2654
原创 证书 描述文件的安装
有的人可能有疑问,安装证书 描述文件有什么可说的,不就直接双击证书 描述文件就自动安装上了么,不过确实这里最直接而且最简单的方法,但我
2017-03-18 14:34:58
1506
原创 通过shell脚本打包
iOS一般是通过xcode进行打包的,然而打包的时候需要配置证书 描述文件等,还需要进行各种点击继续。当然也有比较简单的方法通过shell脚本来打包,其主要是通过xcodebuild xcrun来实现配置证书打包的。当然这里先说shell脚本了,它里面是以 #!/bin/bash开头的,然后文件的名字是以.sh结尾的。 #打包使用的描述文件
2017-03-18 14:33:19
2522
转载 用UICollectionView实现瀑布流
瀑布流的实现要重写UICollectionViewLayout来实现:主要是重写以下几个方法: -(void)prepareLayout;//开始布局 -(CGSize)collectionViewContentSize;//内容大小 -(NSArray *)layoutAttributesForElementsInRect:(CGRect)rect
2015-08-26 23:15:12
1967
转载 Cocoapods安装及使用
1.CocoaPods安装是基于ruby环境的,所以要安装CocoaPods先要安装Ruby环境,国内不能直接安装,只能通过VPN或淘宝的Ruby镜像来访问。 通过Ruby镜像来访问在终端输入以下命令: gem sources --remove https://rubygems.org/ 等有反应后,然后输入 gem sources
2015-08-19 12:47:37
12258
转载 Autolayout之VFL
前面说过给控件一个一个的添加约束代码量很多,写得手软,在这里我们可以用Visual Format Langage,大大的减少了代码量如下图: 同样的界面用VFL只需要几句话即可如下:- (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after
2015-06-05 17:04:10
788
原创 iOS autolayout使用
随着苹果机型越来越多,多机型适配成了一个问题,有的计算屏幕大小 ,有的用autoresize,个人感觉最好用的还是苹果提供的autolayout.当然,每个人的喜好不一样,这就要看自已的喜好了。autolayout实现多机型适配主是用用到约束,通过约束能够定位控件的位置,前提是父视图的大小确定。 下面从最简单的开始说起,在视图中添加Button,父视图占整个屏幕大小是可以确定的
2015-06-02 15:00:18
643
原创 收集的一些资源
http://www.dreamingwish.com/dream-2012/ios-multithread-program-runloop-the.html mac上安装tomocat http://blog.youkuaiyun.com/chenlia/article/details/7692361 https://github.com/gknop
2013-07-26 17:38:52
900
原创 ios国际化
这里我总结了一下ios的国际化 分为两种,一种是应用程序名称国际化,这个是我们生成应用的时候自带的名字叫InfoPlist.strings 里面填写的是应用程序的名称如: CFBundleDisplayName="LocalizetionTest"; CFBundleDisplayName ="国际化例子测试"; 分别对应英文 中文如
2013-07-24 14:11:09
1206
原创 block(程序块)
之前程序中一直用block这里把它进行归类一下。block是ios4.0之后出来的一门新技术,应用也非常广泛,只要我们撑握其使用的翘门,使 用其来也是非常简单的,而且它能将传统程序简单化 程序中" ^ "代表程序块也就是block,在我们接下来的程序中都会有^ block的声明一般都是 返回类型(^block名称)(参数,...,...) 如
2013-07-19 11:55:54
4727
原创 ios中的KVC和KVO
最近研究了一下子KVC和KVO,KVC:即Key-Value-Coding 而KVO:即Key-Value-Observer KVC是针对NSObject的子类,因为它的实现是由于其括展类NSObject(NSKeyValueCoding),实现了 - (void)setValue:(id)value forKey:(NSString *)key; -
2013-07-17 14:42:07
3715
原创 CoreData多线程安全
CoreData中的NSManagedObjectContext在多线程中不安全,如果想要多线程访问CoreData的话,最好的方法是一个线程一个NSManagedObjectContext,,每个NSManagedObjectContext对象实例都可以使用同一个NSPersistentStoreCoordinator实例,这个实例可以很安全的顺序访问永久存储,这是因为NSManagedO
2013-07-16 16:59:10
23943
2
转载 ios中的coredata的使用
Core Data数据持久化是对SQLite的一个升级,它是ios集成的,在说Core Data之前,我们先说说在CoreData中使用的几个类。 (1)NSManagedObjectModel(被管理的对象模型) 相当于实体,不过它包含 了实体间的关系 (2)NSManagedObjectContext(被管理的对象上下文) 操作实际
2013-07-15 18:12:49
62439
转载 ios数据存储方式FMDB
从网上下载FMDB的原码,将其拖入到项目中,然后在Link Binary With Libraries中添加libsqlite3.dylib,就可以用了 实现如下: #import "ViewController.h"#import "FMDatabase.h"#import "FMDatabaseAdditions.h"#import "FMDatabaseQueue
2013-07-10 14:05:12
9708
原创 ios关于数据的存储
这里我总结了一下数据的存储方式,一是保存在沙盒里创建文件,再把数据写到文件中,二是保存到plist中,三是保存到数据库中. 1.保存到文件中需要借助NSKeyedArchiver和NSKeyedUnArchiver 保存数据: NSArray *paths = NSSearchPathForDirectoriesInDomains(
2013-07-09 10:39:07
1457
原创 mac中一一些常用的命令
这里主要讲的是mac中的一些命令,怕忘记了所以记在这里。 1.首先如果两台mac电脑一台想进入另一台的话用ssh执行如下: 上面的autobuild是你想进的电脑的用户名,192.168.1.104是电脑的ip地址 输入完所填写你想进的电脑的密码,结果如图 此时你会发现的进入了对方电脑当前用户名为autobuild,哈哈成功了 2.查找命令
2013-07-04 17:15:30
1261
转载 ios 制作自已的framework
ios中我们写的代码有时不愿意让别人看到,可能对它进行封装,生成一个静态库如典型的.a,还有一种就是和苹果自带的库一样的后缀名为.framework的库,个人推荐使用.framework,因为.a不仅要装其添加进去,还要将对应的头文件添加到项目中。1.新建一个静态库工程。file--new--project,弹出框中选择Ios--framework&library中的cocoa tou
2013-06-27 19:12:24
10238
原创 ios单例模式
本章主要讲的是单例模式,对于单例模式就是指一个类只能创建一个对象,我们的编程中经常会用到单例模式,可能我们自已都不知道,如NSUserDefault, UIApplication等,这两种都是系统封装好了的。下面主要来讲我们自已手动构建自已的单例 构建单例,分为两种 , 一种是非GCD,#import @interface BuyUser : NSObj
2013-06-21 14:42:05
1009
转载 UITapGestureRecognizer会屏蔽掉Button的点击事件
前几天在做项目的时候,遇到这个一个问题,在一个视图也就是UIView上添加一个手势,然后又在这个View上添加一个UIButton,然后给按钮添加事件,运行项目的时候我发现,不管是点击按钮还是视图上的别的地方执行的都是手势所拥有的方法,后来到网上找才发现是手势把按钮的方法给屏蔽了,那怎么解决了正确的方法是给手势设置代理,然后在代理中进行判断如果点击事件是由Button执行的,那就不执行手势,那么系
2013-06-18 11:04:21
8372
转载 Xcode4中Missing file
Xcode4中如果已经配好了svn,后删除项目中的某一文件,重新编译的时候可能会出现Missing file这个警告,一般来说是不要紧的,但是对于追求完美主义的,就想把这个警告去掉,我也算是追求完美主议的哦,具体警告如图:上面的Three20+Addition.h就是因为我将这个文件删除后重新编译后出现的警告,出现这种原因一般都是由于svn或者git所造成的解决的办法:我们
2013-06-09 14:48:27
876
原创 ios urlEncoding base64
base64相关的加密转换昨天做项目的时候,其中要做的一个就是将字符串转换成gbk格式,然后再用base64加密,然后转换成url链接格式,说实话,我最不想弄的就是什么转换,你说用UTF8String多方便啊,但拿别人的工资,是别人叫你干什么你就得老老实实的干,谁叫我们是打工的呢,好了转入正提:要转换成 to_user={urlencoding.encode(base64.encode("
2013-06-05 15:15:18
5592
原创 UIPickerView实现省 市 区三级联动
前几天用UIPickerView实现了一下三级联动具体的如下图点击打开链接下面是实现方式#import "ViewController.h"#define FirstComponent 0#define SubComponent 1#define ThirdComponent 2@interface ViewController
2013-05-22 18:00:57
18443
原创 iOS的编码格式
目前所涉及的主要是gb2312和utf-8两种,utf-8是ios默认的编码格式,有时我们传递参数是要转换成gb2312格式的。或者返回的数据是gb2312格式的如果我们还是以utf-8格式进行接收,可能就接收不到。 将utf-8格式的转换成gb2312格式的 NSString* str1=@"我叫西瓜"; NSString* str2=[str1 stringB
2013-05-08 16:00:54
2110
黑苹果内核安装工具
2012-08-16
黑苹果Atheros AR8151 PCI-E gigabit Ethernet Controller网卡驱动包
2012-08-05
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人