- 博客(62)
- 资源 (1)
- 收藏
- 关注
转载 iOS 10 消息推送(UserNotifications)秘籍总结(一
前言之前说会单独整理消息通知的内容,但是因为工(就)作(是)的(很)事(懒)没有更新文章,违背了自己的学习的初衷。因为互联网一定要有危机意识,说不定眼一睁,我们就out丢了饭碗。 图片来源网络.jpeg“狼,他没有狮子老虎强壮,也没有大象那庞大的身躯,但至少:我从来没在马戏团看到过他们的身影。”也许只有狼在一直奔跑,这是我一直喜欢它的原因,要像狼一样不断奔跑,才能幸存!...
2018-12-24 18:04:01
615
转载 怎么防止img的图片被手机浏览器的 图片查看器 打开
1.各位好~制作广告页 落地页时发现的一个问题.2.类似落地页 广告页的页面, 图片在安卓的 UC浏览器 点击了图片 变成了查看图片 (在其他的浏览器没发现这种情况)3.页面代码结构如 :4.img为一张覆盖手机端整屛的图片, 点击到图片时, 变成了查看图片.如何防止/禁用 UC移动端 这种图片查看器5.补充下, 业务需求没法用背景图代替= =, 之前也有考虑过 但是只能用img的方式6.问题解决...
2018-05-07 17:23:06
3013
转载 onselectstart="return false" : 禁止选取
禁止鼠标右键:oncontextmenu="return false";禁止选择:onselectstart="return false";禁止拖放:ondragstart="return false";禁止拷贝:oncopy=document.selection.empty() 。禁止复制:oncopy = "return false";禁止保存:<noscript><ifra...
2018-05-07 17:22:04
3373
转载 手势响应 ,避免点击多个cell同时响应同一手势多次,只响应第一个cell
http://www.cnblogs.com/wfwenchao/articles/3700205.html UIView除了负责展示内容给用户外还负责响应用户事件。本章主要介绍UIView用户交互相关的属性和方法。1、交互相关的属性userInteractionEnabled 默认是YES ,如果设置为NO则不响应用户事件,并且把当前控件从事件队列中删除。也就是说设置了userInterface...
2018-04-17 20:11:25
620
转载 手势响应 ,避免点击多个cell同时响应同一手势多次,只响应第一个cell
http://www.cnblogs.com/wfwenchao/articles/3700205.html UIView除了负责展示内容给用户外还负责响应用户事件。本章主要介绍UIView用户交互相关的属性和方法。1、交互相关的属性userInteractionEnabled 默认是YES ,如果设置为NO则不响应用户事件,并且把当前控件从事件队列中删除。也就是说设置了userInterface...
2018-04-17 19:04:00
577
转载 ios-vcf格式通讯录的生成和解析(开源),支持5.0以下版本
最近研究通讯录同步,做过vcf的亲们都应该知道,苹果5.0之后才推出两个api : ABPersonCreateVCardRepresentationWithPeople 和 ABPersonCreatePeopleInSourceWithVCardRepresentation,但是要某些变态客户要求产品支持4.3的系统(比如我们的大boss),所以我们就必须自己生成和解析vcf文件啦。不熟悉vc...
2018-04-17 16:41:26
872
转载 iOS:crash崩溃日志分析
一、前言:作为一个合格的iOS开发者,除了具有规范强悍的编码能力外,还应该具有过硬的查错纠错能力。在项目运行时,程序崩溃是不可避免的,遇到这个问题,有时会出现一大堆的crash日志,艹,貌似看不懂呀。其实没有那么可怕,我们可以将这些日志格式化,通过它来快速定位问题的所在,以便迅速搞定它。二、分析:首先我们来看一个crash日志,大略的介绍其中的几个重要的关键词: 关键词解释:2.1、 进程信息第一...
2018-04-12 15:22:50
8805
原创 cocopod 安装
1.RVM安装RVM 是一个命令行工具,可以提供一个便捷的多版本 Ruby 环境的管理和切换。https://rvm.io/如果你打算学习 Ruby / Rails, RVM 是必不可少的工具之一。这里所有的命令都是再用户权限下操作的,任何命令最好都不要用 sudo.RVM 安装$ gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B179...
2018-03-27 17:03:15
409
原创 听筒扬声器的切换
[[UIDevice currentDevice] setProximityMonitoringEnabled:YES]; //建议在播放之前设置yes,播放结束设置NO,这个功能是开启红外感应//添加监听[[NSNotificationCenter defaultCenter] addObserver:self
2017-09-15 15:19:43
1451
1
转载 WebView与JS的几种交互
最近整理了一下原生与H5之间的交互方式,简单的做个总结。OC端与JS的交互,大致有这几种:拦截协议、JavaScriptCore库、WKWebView、自定义NSURLProtocol拦截、WebViewJavascriptBridge。JavaScriptCore一个iOS7引进的标准库,iOS7以前也有开发者自行导入使用。Web端也比较容易统一。WebViewJavascriptB
2017-09-08 17:38:04
2869
转载 iOS JS 交互之利用系统JSContext实现 JS调用oc方法
公司员工端项目还剩最后一块js交互剩着,由于项目是仿安卓端做的,之前做安卓的那个走了好久,问现在的安卓他也是一头雾水,自己搞了一个星期,也是云里雾里。 对于交互这一块,安卓实现起来非常的方便,一句addJavascriptInterface就能解决,而iOS则比较麻烦特别是对于我这种.......................,网上查了一大堆大都是粘贴复制差不多的文
2017-09-08 17:36:35
420
1
原创 UITableViewCell部分区域点击问题
- (void)touchesBegan:(NSSet*)touches withEvent:(UIEvent*)event { UITouch* touch = [[event allTouches] anyObject]; CGPoint leftLocation = [touch locationInView: self.contentView]; CGPoint t
2017-06-22 23:57:15
1227
转载 pushKit使用总结
最近项目要做关于voip业务,我们都知道苹果后台是一个假后台,当程序退出到后台时,socket是会断开连接,程序是被挂起的。我们要做的就是类似QQ 微信那种,在程序退到后台时,有电话来时弹出一个通知。要了解pushkit概述请参考下面连接百度某大神的博客http://blog.csdn.net/openglnewbee/article/details/448071911.证
2017-06-14 16:33:51
919
原创 AFNetWorking3.0简单封装及Https
#import #import "AFNetworking.h"#define API_MAIN @""@interface AFMananger : NSObject@property (nonatomic, strong)AFHTTPSessionManager *manager;+ (instancetype)share;+ (void)test1GETRequestWi
2017-03-03 16:46:11
368
转载 iOS开发-常用第三方开源框架介绍(你了解的ios只是冰山一角)
图像: 1.图片浏览控件MWPhotoBrowser 实现了一个照片浏览器类似 iOS 自带的相册应用,可显示来自手机的图片或者是网络图片,可自动从网络下载图片并进行缓存。可对图片进行缩放等操作。 下载:https://github.com/mwaterfall/MWPhotoBrowser 目前比较活跃的社区仍旧是Github,除此以外也有一些不错的库散落在Google Code
2017-01-23 11:31:34
2596
转载 iOS 迁移到HTTPS(自建证书+单向验证+AF3.0+WKWebView+SDWebImage)
马上就2017年了,据说元旦apple就强制HTTPS了,就像之前强制IPV6一样任性,好方~~~ 不到万不得已,项目经理不舍得买CA证书,于是就开始了坑爹的自建证书HTTPS之旅。 写在前面的提醒 ① 还没到2017,苹果还没确切的说明对HTTPS的要求,所以目前还不确定自建证书到底可不可以通过审核。 ② 网上很多人说自建证书必须禁掉ATS才能正常访问(A
2017-01-11 16:48:36
904
原创 ios 比较两个数组的数据的不同
- (BOOL)filterArr:(NSArray *)arr1 andArr2:(NSArray *)arr2 { NSPredicate * filterPredicate = [NSPredicate predicateWithFormat:@"NOT (SELF IN %@)",arr1]; //得到两个数组中不同的数据 NSArray * reslutFilte
2016-12-19 18:38:51
4170
转载 关于 iOS 10 中 ATS 的问题
本文于 2016 年 11 月 28 日按照 Apple 最新的文档和 Xcode 8 中的表现进行了部分更新。WWDC 15 提出的 ATS (App Transport Security) 是 Apple 在推进网络通讯安全的一个重要方式。在 iOS 9 和 OS X 10.11 中,默认情况下非 HTTPS 的网络访问是被禁止的。当然,因为这样的推进影响面非常广,作为缓冲,我们可
2016-12-08 17:10:15
443
转载 CocoaPods安装和使用教程
CocoaPods安装和使用教程Code4App 原创文章。转载请注明出处:http://code4app.com/article/cocoapods-install-usageCocoaPods是什么?当你开发iOS应用时,会经常使用到很多第三方开源类库,比如JSONKit,AFNetWorking等等。可能某个类库又用到其他类库,所以要使用它,必
2016-11-30 13:25:45
283
转载 ios10新特性
1.语音识别 苹果官方在文档中新增了API Speech,那么在以前我们处理语音识别非常的繁琐甚至很多时候可能需要借助于第三方框架处理,那么苹果推出了这个后,我们以后处理起来就非常的方便了,speech具有以下特点: 可以实现连续的语音识别 可以对语 音文件或者语音流进行识别 最佳化自由格式的听写(可理解为多语言支持)和搜索式的字符串
2016-09-18 15:11:49
417
转载 iOS10适配总结2
1.系统判断方法失效:在你的项目中,当需要判断系统版本的话,不要使用下面的方法:#define isiOS10 ([[[[UIDevice currentDevice] systemVersion] substringToIndex:1] intValue]>=10)它会永远返回NO,substringToIndex:1在iOS 10 会被检测成 iOS 1了,应该使用下面的这些方法:
2016-09-18 15:03:12
1297
转载 iOS10适配总结
常见问题点:问题一(nullable)Q:以前是可以nullable的,现在的报错了。A:删掉就好了问题二(系统权限)Q:xcode8编译的版本在访问相机、相册等需要用户点击允许开通权限的地方会崩溃A:由于iOS10对Security and Privacy Enhancements安全和保密性增强,在申请很多私有权限时,都需
2016-09-18 15:02:29
4863
转载 iOS 之GCD串行和并发队列的理解
dispatch_queue_t serialQueue = dispatch_queue_create("com.lai.www", DISPATCH_QUEUE_SERIAL); dispatch_async(serialQueue, ^{ // NSLog(@"1"); sleep(3); NSLog(@"1"); })
2016-09-09 19:38:00
461
转载 ios多线程操作(六)—— GCD全局队列与主队列
GCD默认已经提供了全局的并发队列供整个应用使用,所以可以不用手动创建。 创建全局队列的函数为dispatch_queue_t q = dispatch_get_global_queue(long identifier, unsigned long flags) 参数类型为:long identifier:ios 8.0 告诉队列执行任务的“服务质量
2016-09-09 19:32:36
1774
转载 GCD介绍: 基本概念和Dispatch Queue
iOS的三种多线程技术 1.NSThread 每个NSThread对象对应一个线程,量级较轻(真正的多线程)2.以下两点是苹果专门开发的“并发”技术,使得程序员可以不再去关心线程的具体使用问题ØNSOperation/NSOperationQueue 面向对象的线程技术ØGCD —— Grand Central Dispatch
2016-09-09 19:28:23
305
转载 iOS导航标题不居中问题
前言一直以来都让我很头痛的一个问题:系统自带的导航条,在标题文字很长时,进入到下一个界面,而下一个界面的标题也很长时,就会出现标题不居中显示。曾经,我尝试过很多种办法,但是都没有从根上解决问题。下面笔者分别说说用过哪些方案。方案一(不可行)这个方案是不使用系统自带默认的backButtonItem,而是使用leftBarButtonItem。这样做的好处是:
2016-08-30 12:42:00
2658
转载 iOS 动画
iOS开发中三种简单动画设置一、首尾式动画如果只是修改控件的属性,使用首尾式动画还是比较方便的,但是如果需要在动画完成后做后续处理,就不是那么方便了。123456789101112131415161718192021222324252627282930313233343536373839404142434445464748#import "ViewContr
2016-06-29 19:46:48
291
原创 使用protoBuf
需要先安装brew,这个安装的过程中,直接使用官方的安装方法安装就可以了,就是一句话,brew可以用来方便的安装软件brew -v查看你的mac里面有没有装brew。brew是mac os里面,类似于ubuntu的apt-get的功能,都可以直接在终端输入命令然后安装程序。-v自然就是版本version的意思http://brew.sh https:/
2016-06-28 11:38:19
263
转载 在含有WebView、ScrollView和TableView等的Controller中侧滑返回无效,解决侧滑返回,又遇到假死问题的解决办法
在iOS7之后苹果就添加了边缘侧滑返回这个功能,对于苹果软件的操作体验有很好的提升,但是这种操作在有些地方会被系统屏蔽掉,如在一个viewController中添加了scrollView或者tableView的时候。由于这些控件里面都有ScrollView,边缘侧滑返回的时候会首先触发ScrollView滚动而失效,导致侧滑手势失效,但是大部分时候我们并不需要ScrollView的横向滚动,所以这
2016-06-24 11:08:20
1776
原创 书签,博客保存
http://www.jianshu.com/p/e9ae4cece800应用内支付IAP全部流程http://bbs.tairan.com/thread-13220-1-1.html[技术分享] iOS应用内置付费详尽攻略(全文)(泰然论坛)http://www.henishuo.com/cell-embed-webview/( 标哥博客)
2016-06-06 13:37:13
350
原创 mac下 git简单的安装,配置,操作
git图形化安装这里可以下载最新的安装包http://code.google.com/p/git-osx-installer/打开.dmg,双击.pkg文件即可完成安装终端下可用which git和git --version测试是否安装成功安装成功后打开终端cd ~进入根目录输入命令ssh-keygen生成ssh-key,如果有提示,一直按回车commd+shi
2016-05-20 15:55:27
898
转载 Xcode崩溃日志分析工具symbolicatecrash用法
什么是symbolicatecrashsymbolicatecrash是Xcode自带的一个分析工具,可以通过机器上的崩溃日志和应用的.dSYM文件定位发生崩溃的位置,把crash日志中的一堆地址替换成代码相应位置。为什么要用symbolicatecrash开发者调试错误只需要有真机,并且连接到xcode上,就可以跟踪发现错了。但是如果你的APP不是安装在你自己的真机上
2016-05-09 11:10:40
382
原创 打包静态库.a
1.新建2.修改release3.编译工程注:在情况下编译生成存在模拟器和真机两种情况下的静态文件4.打开终端(1)真机1⃣️输入命令:cd+空格+文件的路径(不包含.a文件,取到Release-iphoneos)如:进入文件夹2⃣️查看文件详情 输入命令:lipo+空格+-info+静态文件名 结果如::(2)模拟器1⃣️输入命令:
2016-03-22 17:23:20
281
原创 ios开发中,联系人列表是怎样通过名字排序分组的(支持中文排序)
在NSString有一个函数localizedCompare:,它的功能是通过自身与给定字符串的比较,返回一个本地化的比较结果,也就是说这个函数是支持汉字比较的。 进一步localizedCompare:只是字符串与字符串的比较,我们要让NSArray数组通过按关键字为汉字字符串排序,我们继续在NSArray的SDK上下功夫,我们发现除了sortdArrayUsingDescriptors
2016-03-18 13:12:09
3145
转载 IOS异步获取数据并刷新界面dispatch_async的使用方法
在ios的开发和学习中多线程编程是必须会遇到并用到的。在java中以及Android开发中,大量的后台运行,异步消息队列,基本都是运用了多线程来实现。 同样在,在ios移动开发和Android基本是很类似的一种模型。 但是很多时候,在应用开发中,我们会发现本身并没有自己编码去处理一些并发的事件,去开辟新的子线程等等。 (虽然一般的调用sdk发起一个网络请求,系统都是会默认给你新起一
2016-03-17 15:08:58
878
转载 iOS Socket UDP编程-C语言版
1. UDP Socket编程先讲一讲UDP编程,因为比TCP要简单多了。首先,我们需要明白UDP是用户数据报协议,英文名为User Datagram Protocol,它是面向无连接的。注意:Socket通信一定有要服务端和客户端。1.1 UDP Socket客户端客户端的工作流程:首先调用socket函数创建一个Socket,然后指定服务端的IP地址和端
2016-03-10 09:29:04
333
转载 iOS Socket TCP编程-C语言版
1. TCP Socket编程TCP是面向连接的,安全可靠的传输层协议。TCP的程序基本框架设计图:注意:Socket通信一定有要服务端和客户端。1.1 TCP Socket客户端客户端的工作流程:首先调用socket函数创建一个Socket,然后指定服务端的IP地址和端口号,就可以调用sendto将字符串传送给服务器端,并可以调用recvfrom接收服务器
2016-03-10 09:24:24
430
转载 iOS Socket理论知识
序言网络七层由下往上分别为物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。 其中物理层、数据链路层和网络层通常被称作媒体层,是网络工程师所研究的对象; 传输层、会话层、表示层和应用层则被称作主机层,是用户所面向和关心的内容。http协议对应于应用层tcp/udp协议对应于传输层ip协议对应于网络层三者本质上没有可比性。何况HTTP协议是基于TCP连接
2016-03-10 09:18:34
222
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人