自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 iOS UIWebView 图片 内存缓存 交互二维码识别

iOS UIWebView 图片 内存缓存 交互二维码识别最近公司项目开发遇到了原生与js交互的问题,讲义是webview,里边有些图片需要查看。相信这个需求很多人都遇到过。那么今天我就仔细帮你梳理下。那些还在为这个功能头疼的,请继续看,或者你直接拷贝代码使用。这个功能需要以下几个步骤:获取图片,获取图片URL ,获取图片frame 把获取的图片展示在window上*我们先从获取图片说起写在前边

2017-09-14 18:21:27 1059 1

原创 BSocket 直播礼物。实现。长连。逻辑,界面 demo

https://github.com/1120198892/GiftSocketDemo

2016-09-08 16:43:29 1044

转载 Photos 框架实践以及坑

导读对于 Photos 框架的介绍,推荐观看 objccn.io 的文章。写得真好,我写得的文章水准还差得老远啊。本文总结了近期使用 Photos 框架编写一个相册的经验,目前还有很大一部分的框架内容没有涉及到,后续会更新内容。获取资源照片库中有两种资源可供获取:PHAsset和PHCollection,前者代表图像或视频对象,后者是前者的集合或自身类型的集合。PHCollection...

2018-08-30 10:46:45 354

转载 关于改变UIProgressView的宽、高以及两端弧度

self.progressView = [[UIProgressView alloc] initWithProgressViewStyle:UIProgressViewStyleDefault];//这里是设定progressView的模式为默认模式 self.progressView.frame = CGRectMake(16, CGRectGetMaxY(label1.frame) + 15,...

2018-07-30 17:23:55 1359

原创 masnory 宽度自适应

当 label想要宽度自适应时 加上下面的话 “Content Compression Resistance”和“Content Hugging”1.宽度不够时[_label1 setContentCompressionResistancePriority:UILayoutPriorityRequired ...

2018-07-30 12:00:11 608

转载 iOS 构建一个容器控制器

容器视图控制器是一种结合多个视图控制器的内容到一个单一的用户界面上的方式。容器视图控制器经常被用来使导航更方便,基于已经存在的内容创建一个新的用户界面类型。例如,在UIKit中的容器视图控制器包括UINavigationcontroller,UITabBarcontroller 和 UISplitViewcontroller,它们都可以使用户界面在不同视图部分之间的切换和导航更加的容易。 ...

2018-07-26 14:12:32 543

转载 git rebase 理解

原文:http://gitbook.liuhui998.com/4_2.html一、基本git rebase用于把一个分支的修改合并到当前分支。假设你现在基于远程分支"origin",创建一个叫"mywork"的分支。$ git checkout -b mywork origin假设远程分支"origin"已经有了2个提交,如图 现在我们在这个分支做一些修改,然后生成两个提交(commit).$ ...

2018-07-04 15:12:38 16289 3

原创 iterm2 高亮配色 设置

https://www.jianshu.com/p/43613289eb6e参考上边的链接设置 高亮配色,下载主题

2018-07-03 11:29:49 5340

原创 插入排序 代码

int optimizationInsertionSort(){        int arry[] = {3,5,6,9,4,1,2,7,8};        int len = sizeof(arry)/sizeof(arry[0]);        int i,j,temp;        for (i = 1; i<len; i++)    {        temp = arry[...

2018-06-14 17:24:59 232

原创 Swift 修饰符

*1. open:可以在任何地方访问、继承和重写*2. public:可以在任何地方被访问,在其他module中不能被继承和重写(一会在详细介绍一下什么是module内和module外)*3. internal:默认访问级别,在整个模块内都可以被访问*4. fileprivate:其修饰的属性可以再同一个文件被访问、继承和重写,同一个文件指同一个swift文件,一个文件中可以有多个类private...

2018-05-09 10:55:17 380

转载 __nullable 消除

警告;Pointer is missing a nullability type specifier.....我觉得我是一个强迫症,写完代码都会去去掉所有的警告,,,(有的我也去不掉好闹心)今天介绍一个警告的去掉方法。例子:刚刚遇见这个警告的时候脑子有点蒙,这是为什么呢,,我觉得写法没什么问题的说,后来经过多番查找,发现这是Xcode 6.3的一个新特性,即nullability annotati...

2018-04-13 16:48:58 759

转载 MQTT - iOS实现

最近在使用MQTTClient实现一个类似于消息推送的服务,说实话,真没怎么使用过MQTTClient,也不知道这是个啥?  上网了解了一下,发现MQTT功能挺强(牛)大(逼),既能做即时通讯,又能搞消息推送等功能。这里我使用的是消息推送服务,通过和服务器端协商,终于能够与服务器连接,并且能够收发消息了。 所以,简单总结了一下,有了这篇文章。MQTT介绍MQTT MQTT基于订阅者模型架构,客户端...

2018-04-09 15:17:56 5077 1

转载 performSelector系列方法编译器警告-Warc-performSelector-leaks

更新:如果selector是属性的get方法,而且是在运行时才确定的话,比较好的作法应该是使用KVC来获取,最近我正在看KVC的官方文档,之后会把学习笔记发布出来如果selector是在运行时才确定的,performSelector时,若先把selector保存起来,等到某事件发生后再调用,相当于在动态绑定之上再使用动态绑定,不过这是编译器不知道要执行的selector是什么,因为这必须到了运行时...

2018-03-16 15:31:29 403

原创 #pragma clang diagnostic ignored

clang diagnostic、Wprotocol 首先, #pragma 本质上也是声明,一般常用的功能就是打注释、尤其是分段注释但是#pragma 另外一个强大的功能就是处理编译器警告,用的时候可能就没上一个功能用的那么多,在代码中处理警告却是极其高效的方法。其中 clang diagnostic 便是#pragma 第一个功能常用的命令,步骤如下[java] view plain copy...

2018-03-16 15:29:43 327

原创 boundingRectWithSize 文本表情计算

在IOS开发中例如微博,QQ聊天界面中要显示大量的文字信息,这样需要计算出文字部分的尺寸,才能设计出合适的控件尺寸和位置。下面是IOS 7.0计算文本尺寸的方法。- (CGRect)boundingRectWithSize:(CGSize)size options:(NSStringDrawingOptions)options ...

2018-03-15 14:15:56 580

原创 iOS 视频转gif

zhaoxiaoga/XGVideoToGIF这是一个随时录视频 随时转gif得demo 支持查看gifMIT licenseUpdated on 25 Mar 2015 Objective-C 21doubleYang1020/VideoToGIFiOS开发中将视频文件转换为gif图并设置gif压缩尺寸Updated on 17 Aug 2017 Objective-C 11NJHu/iOSPr...

2018-03-07 14:27:17 2918

转载 removeObject和removeObjectIdenticalTo

[array removeObject:(id)] :删除数组中指定元素,根据对象isEqual消息判断。[array removeObjectIdenticalTo:(id)] : 删除数组中指定元素,根据对象的地址判断[array removeObjectIdenticalTo:(id) inRange:(NSRange)] : 在指定范围内删除指定的元素。[array removeObjec...

2018-03-07 11:19:59 577

转载 iOS 视频录制 转码 压缩 上传

最新做的一个功能涉及到了视频的录制、压缩及上传。根据网上诸多大神的经验,终于算是调通了,但也发现了一些问题,所以把我的经验分享一下。首先,肯定是调用一下系统的相机或相册代码很基本:[objc] view plain copy  //选择本地视频  - (void)choosevide

2017-12-29 15:49:47 1858

转载 iOS 导航栏透明度 监听导航栏返回进度

如我在传送门:iOS导航栏切换界面时隐藏和显示中所说,现在很多App的个人中心模块都是不保留导航栏的,会直接使导航栏透明,比如做的很好的QQ个人信息界面:为什么说QQ做的很好呢?既然有透明的导航栏也有不透明的导航栏,那一定会在界面切换之间存在一个过渡的过程,而这个过程,QQ做的特别好,在从透明导航栏界面返回到不透明导航栏界面时,导航栏的透明度是一个渐进的过渡效果,甚至会有一种毛玻璃

2017-12-21 15:18:14 1261

转载 iOS音频篇:使用AVPlayer播放网络音乐

iOS音频篇:使用AVPlayer播放网络音乐 明仔Su 关注2016.03.19 15:26* 字数 1942 阅读 22003评论 36喜欢 182引言假如你现在打算做一个类似百度音乐、豆瓣电台的在线音乐类APP,你会怎样做?首先了解一下音频播放的实现级别:(1) 离线播放:这里并不是指应用不联网,而是指播放本地音频文件,包括先下完完

2017-12-13 17:32:40 2219

转载 iOS 视频压缩

AVFoundation框架中提供了视频压缩的功能,有一些应用场景,对像素要求不高,但是需要看到视频的,可以对视频进行压缩,比如微信的小视频功能。//压缩- (void)compression{ NSLog(@"压缩前大小 %f MB",[self fileSize:_videoUrl]); // 创建AVAsset对象 AVAsset* asset = [AVAsset assetW

2017-12-03 20:14:30 822

转载 iOS视频转码 mov 转 mp4

利用AVFoundation框架实现视频格式转码,下面以mov转mp4为例:/**mov转mp4格式*/-(void)convertMovSourceURL:(NSURL *)sourceUrl{AVURLAsset *avAsset = [AVURLAsset URLAssetWithURL:sourceUrl options:nil];NSArray *compatib

2017-12-03 20:09:16 6039

转载 ios 视频录制

先附上参考资料http://www.jianshu.com/p/16cb14f53933https://developer.apple.com/library/content/samplecode/AVSimpleEditoriOS/Introduction/Intro.htmlhttps://github.com/objcio/VideoCaptureDemohttps://github

2017-12-03 16:10:27 418

原创 ios gif 暂停与播放

其实网上GitHub有很多第三方的,但是用起来比较麻烦,这里介绍最简单的一种方式,,(点击按钮开始播放动态图) 1,集成SDWebImage之后,引入头文件#import "UIImage+GIF.h"2.初始化按钮,(loadingImageView是定义的全局的UIImageView,自己顶一下)    self.loadingImageView= [[UIIm

2017-11-30 14:13:59 3813

原创 人脸检测内存

因出问题应用模块是开启摄像头在不停检测每一帧图像并检测人脸,这样每秒会处理30次,导致临时的UIImage对象迅速增多,占用内存过大。在收到didReceiveMemoryWarning通知时,调用AVCaptureSession类的停止运行,然后再重新运行。[self.captureSessionstopRunning];dispatch_after(dispatch_time(DISPATCH

2017-11-01 18:22:50 372

原创 /System/Library/Frameworks/Ruby.framework/Versions/

cocoapods 在 Mac10.11 遇到如果下问题/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/universal-darwin15/rbconfig.rb:213: warning: Insecure world writable dir /usr/local/bin in PATH, m

2017-10-30 14:26:19 3366

原创 Xcode $(SRCROOT)和$(PROJECT_DIR)区别

2016-06-13 15:09 by jiangys, 4784 阅读, 0 评论, 收藏,  编辑$(SRCROOT)代表的时项目根目录下$(PROJECT_DIR)代表的是整个项目PS:往项目添加文件时,例如.a等,要先show in finder ,复制到项目中,然后再拖到xcode项目中而有时,我们的.a不在工程目录中,比如在工程的父目录上,可以写成:$(SRCR

2017-10-27 17:11:41 5643

原创 fastline 安装使用

我的开发环境:macbook pro OS X EI Capitan 版本 10.11.6 使用fastlane所需要求:1.OS X 10.9 (Mavericks) 以上2.Ruby 2.0 以上3.Xcode 7.3.14.拥有一个付费的苹果开发者账号(我的账号是加入开发组,并且给我开了管理员权限,未付费)那么接下来将一步一步走进Fastlane的世界二、配置环境1.如果你没有X

2017-10-27 15:36:52 4171 1

转载 产品流程

项目同步会议会议应该要明确:昨天做了什么事情,今天要做哪些事情,在工作中遇到了什么问题。在会议中产品经理应该重点关注两个方面:其一是昨天工作是否真的完成,这里所说的完成不是代码写完了就了事,也不是自测没问题了就是完成,所谓一个任务的完成应该是真正意义上的完成,即满足用户需求,可立即部署到真实环境中进行使用。产品经理注意要点1. 思想优化。在开发过程中一定会出现研发人员的意见与产品经

2017-10-16 15:01:56 387

转载 iOS列表滚动流畅

iOS 中关于列表滚动流畅的一些探讨2017年9月6日近些年,App 越来越推崇体验至上,随随便便乱写一通的话已经很难让用户买帐了,顺滑的列表便是其中很重要的一点。如果一个 App 的页面滚动起来总是卡顿卡顿的,轻则被当作反面教材来吐槽或者衬托“我们的 App balabala…”,重则直接卸载。正好最近在优化这一块儿,总结记录下。如果说有什么好的博客文章推荐,ibireme

2017-10-16 15:00:52 370

转载 iOS屏幕旋转详解

屏幕旋转学习笔记   加速计是整个IOS屏幕旋转的基础,依赖加速计,设备才可以判断出当前的设备方向,IOS系统共定义了以下七种设备方向:typedef NS_ENUM(NSInteger, UIDeviceOrientation) {    UIDeviceOrientationUnknown,    UIDeviceOrientationPortrait,

2017-09-28 10:24:38 396

转载 iOS 隐式动画

[iOS Animation]-CALayer 隐式动画隐式动画按照我的意思去做,而不是我说的。 -- 埃德娜,辛普森我们在第一部分讨论了Core Animation除了动画之外可以做到的任何事情。但是动画是Core Animation库一个非常显著的特性。这一章我们来看看它是怎么做到的。具体来说,我们先来讨论框架自动完成的隐式动画(除非你明确禁用了这个功能)。

2017-09-27 15:06:18 315

转载 iOS 隐式动画详解

[iOS Animation]-CALayer 隐式动画隐式动画按照我的意思去做,而不是我说的。 -- 埃德娜,辛普森我们在第一部分讨论了Core Animation除了动画之外可以做到的任何事情。但是动画是Core Animation库一个非常显著的特性。这一章我们来看看它是怎么做到的。具体来说,我们先来讨论框架自动完成的隐式动画(除非你明确禁用了这个功能)。

2017-09-27 15:04:54 551

原创 熟悉常见算法

iOS面试中熟悉常见算法1、 对以下一组数据进行降序排序(冒泡排序)。“24,17,85,13,9,54,76,45,5,63”int main(int argc, char *argv[]) { int array[10] = {24, 17, 85, 13, 9, 54, 76, 45, 5, 63}; int num = sizeof(array)/size

2017-09-21 10:05:47 734 2

转载 App适配iOS 11

随着Xcode GM版本发布,适配iOS 11也就提上了日程,总的来说整个适配过程(不包含适配iPhone X)不是很麻烦。首先建议观看今年WWDC的一个视频 Updating Your App for iOS 11,视频讲解了iOS 11一些API的变化,对理解适配过程有帮助。navigation bar1、导航栏新增了一种大标题样式,默认设置是不开启,所以不需要修改。

2017-09-20 10:43:06 912

原创 iOS WebView 获取内存图片 图片点击

获取UIWebView 内存中的图片需要用到一个第三方RNCachingURLProTocol 使用步骤1 在appdelegate 里边注册。2 在相关获取到ImageURL 以后调用 NSString *fileName = [RNCachingURLProtocolcachePathForURLString:path];        RNCach

2017-09-13 11:10:33 681

原创 IOS Webview 禁用交互行为

UIKit提供UIWebView组件,允许开发者在App中嵌入Web页面。通过UIWebView组件,我们可以在应用中很方便的嵌入HTML页面。在利用IOS原生的组件进行界面开发时,界面UI元素的布局需要我们去一点点的计算,尤其是对于复杂点的图文混排的内容来说,这种计算有时很让人头痛。与原生组件相比,HTML本身的结构性语义性较强,利用CSS能更加方便快捷的进行内容布局和美化,同时Javascri

2017-09-12 13:58:21 4741

原创 iOS webView 图片点击

最近项目某个模块中要求可以实现对网页中图片的查看,并要求在多张图片的情况下可以实现滑动浏览。所以,问题的集中点就是如何获取所有的图片地址及添加图片的点击事件。不多说,直接上码!在网页加载完成时,通过js获取图片和添加点击的识别方式- (void)webViewDidFinishLoad:(UIWebView *)webView {   

2017-09-11 14:21:09 500

原创 蜂窝移动的架构 以及省电的方法

蜂窝网络的架构类似于我们常见的蜂窝,是由一个个基站组成的蜂窝,理想状态中我们的蜂窝网络应该是下面这个样子的。当然,现实生活中网络资源分布并没有这么的均匀。Wi-Fi 是一种无限局域网技术,Wi-Fi 信号需要有线网来提供,比如我们家里常用的宽带上网,就是将有线信号转换成 Wi-Fi 信号。计费的差异性我们平时使用的蜂窝网络一般都是按照流量来收费的,比如 10 元

2017-09-05 11:27:04 491

原创 CoreText - 1

API接口文档。https://developer.apple.com/library/mac/#documentation/Carbon/Reference/CoreText_Framework_Ref/_index.htmlCoreText 框架中最常用的几个类:CTFontCTFontCollectionCTFontDescriptor

2017-08-29 15:43:37 338

空空如也

空空如也

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

TA关注的人

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