9 gaoyuqiang30

尚未进行身份认证

暂无相关简介

等级
TA的排名 2w+

WKWebView替换UIWebView

1.引入头文件#import<WebKit/WebKit.h>2.先使用WKWebView基本方法写个例子,加载baidu页面,写法跟UIWebView类似-(void)viewDidLoad{[superviewDidLoad];//Doanyadditionalsetupafterloadingtheview.WKWebViewConfigu

2017-08-16 19:17:03

tabar突起按钮点击

Edittabar突起按钮点击之前面试经常问到tabbar突出按钮该如何点击,只知道用Hittest来解决,但是到底该重写哪个view的hitTest方法我不确定。刚开始肯定想要的是tabBar,但是tabBar的本身没在点击区域,我以为压根不会走进tabBar的HitTest方法,必须在它的上一层寻找,也就是self.view,但是self.view重写又很麻烦,而且突起按钮

2017-08-02 13:12:24

使用NSProxy和NSObject设计代理类的差异

转自:http://www.tanhao.me/code/160702.html/?utm_source=tuicool&utm_medium=referral如有侵犯,请来信oiken@qq.com经常发现在一些需要使用消息转发而创建代理类时,不同的程序员都有着不同的使用方法,有些采用继承于NSObject,而有一些采用继承自NSProxy.二者都是F

2017-07-28 17:23:44

代码质量以及内存泄露排查总结

想体验一把CentOS系统玩一下命令行?试试腾讯云上实验室吧 https://cloud.tencent.com/developer/labs原文链接:http://www.jianshu.com/p/4e447f1d8ffa在几周的稳定性工作中,我对现有内涵iOS代码进行了一次初步的review过程,主要是针对一些非必现性crash的审查。——由Moon同学分享

2017-07-28 16:13:57

将model转化为字典

将model转化为字典刚入行时就见过项目里有mode转化为字典的代码,后来用过MJExtension的第三方库,非常好用,其实原理就是利用runtime遍历所有属性值,然后进行转化。但是自己从来没有动手写过~~~今天亲自写一写1.先用runtime遍历所有属性值代码如下:-(NSDictionary*)dicFromObject:(NSObject*)object{NSMuta

2017-07-26 17:45:57

使用appscript+python来控制Mac下的GUI应用程序

在Mac下,appscript是一个与应用程序通信交互的强大工具。用Python的appscript模块,可以在不用学习appscript的情况下也能做到与很多应用程序交互的功能。 打开Mac的终端,安装很简单: sudoeasy_installappscript 然后运行ipython,先来试一个简单有趣的例子: Python代码  >> 

2017-07-14 15:28:18

python 编码问题:'ascii' codec can't encode characters in position 的解决方案

报错:'ascii'codeccan'tencodecharactersinposition8-50:ordinalnotinrange(128)Python在安装时,默认的编码是ascii,当程序中出现非ascii编码时,python的处理常常会报这样的错UnicodeDecodeError:'ascii'codeccan'tdecodebyt

2017-06-21 10:56:37

优先级反转

什么是优先级反转?   优先级反转是指一个低优先级的任务持有一个被高优先级任务所需要的共享资源。高优先任务由于因资源缺乏而处于受阻状态,一直等到低优先级任务释放资源为止。而低优先级获得的CPU时间少,如果此时有优先级处于两者之间的任务,并且不需要那个共享资源,则该中优先级的任务反而超过这两个任务而获得CPU时间。如果高优先级等待资源时不是阻塞等待,而是忙循环,则可能永远无法获得资源,因为此时

2017-05-17 18:05:57

iOS调试之Reveal插件-RevealLoader

要使用RevealLoader,必须要越狱设备才行。打开Cydia,搜索栏搜索RevealLoader。如图,点击RevealLoader即可,然后点击继续,接下来就等着安装机可以了。(不过在ipad上我试了试不行,能安装上,但列表是空的)3.pic.jpg安装完后打开系统的设置,如图找到Reveal这一选项。进去之后点击EnabledApplications

2017-05-14 15:36:56

iOS陷阱--NSDateFormatter的线程安全性

经常需要将NSDate和NSString进行互转,一般我们会这么写:NSDate转NSStringNSDateFormatter*dateFormatter=[[NSDateFormatteralloc]init];[dateFormattersetDateFormat:@”yyyy-MM-dd’T’HH:mm:ss”];[dateFormattersetTime

2017-04-15 16:36:38

iOS 开发中的八种锁(Lock)

锁之前的性能的图表:lock_benchmark.png发现除了@synchronized 用过,其他的都陌生的很,可以说完全不知道啥玩意儿~于是怀着惭愧的心情赶紧把这些锁学习了下,废话不多说,我们开始:锁是什么意思?我们在使用多线程的时候多个线程可能会访问同一块资源,这样就很容易引发数据错乱和数据安全等问题,这时候就需要我们保证每次只有一个线

2017-04-15 16:21:04

不再安全的 OSSpinLock

昨天有位开发者在 Github 上给我提了一个 issue ,里面指出 OSSpinLock 在新版 iOS 中已经不能再保证安全了,并提供了几个相关资料的链接。我仔细查了一下相关资料,确认了这个让人不爽的问题。OSSpinLock 的问题2015-12-14 那天, swift-dev 邮件列表里 有人在讨论 weak 属性的线程安全问题,其中有几位苹果工程师透露了自旋锁的问题,

2017-04-15 16:15:10

Xcode8 安装XcodeColors插件与CocoaLumberjack工具

工欲善其事必先利其器,好的开发者一定是懂得利用工具来提高自己的效率的,Xcode有很多第三方插件可以使用,最近发现一个可以给控制台着色的工具XcodeColors,结合CocoaLumberjack一起使用可以让控制台有选择的输出信息,可以把输出到控制台的信息分为多种类型,在不同场景下输出不同的信息下面记录一下如何使用XcodeColors/ CocoaLumberjack和过程中遇到

2017-04-15 11:37:06

移动开发中MVC模式和分层

MVC在界面开发中被奉为设计的典范,在移动开发中也是MVC全名是ModelViewController,是模型(model)-视图(view)-控制器(controller)的缩写。它将业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。我刚接触iOS,想通过ios的一些实例设计来理解MV

2017-03-20 09:49:59

iOS组件化思路

一、大神博客研读随着应用需求逐步迭代,应用的代码体积将会越来越大,为了更好的管理应用工程,我们开始借助CocoaPods版本管理工具对原有应用工程进行拆分。但是仅仅完成代码拆分还不足以解决业务之间的代码耦合,为了更好的让拆分出去的业务工程能够独立运行,必须进行组件拆分并且实现组件服务化。下面是最近在行业内几个大神的博客辩论对战,具体资料如下:2016.03.10蘑菇街App的

2017-03-18 20:42:39

iOS网络优化

(1)博客a,阿里无线11.11:手机淘宝521性能优化项目揭秘   阿里无线11.11:手机淘宝移动端接入网关基础架构演进之路b,携程App的网络性能优化实践c,  charles使用简介d, 无线性能优化:域名收敛的过程e, App域名劫持之DNS高可用-开源版HttpDNS方案详解(2)原因分析a,服务器处理时间慢,比如读取数据库等

2017-03-18 20:41:34

iOS封装功能生成 .framework

前言   如果你想将你开发的控件与别人分享,一种方法是直接提供源代码文件。然而,这种方法并不是很优雅。它会暴露所有的实现细节,而这些实现你可能并不想开源出来。此外,开发者也可能并不想看到你的所有代码,因为他们可能仅仅希望将你的这份漂亮代码的一部分植入自己的应用中。   另一种方法是将你的代码编译成静态库(library),让其他开发者添加到自己的项目中。然而,这需要你一

2017-03-18 20:40:43

【iOS app加密】iOS app之游戏加密防破解

【iOS app加密】iOS app之游戏加密防破解。iOS app游戏类应用有一个很泛滥但被视为鸡肋的问题,那就是iOS app被破解的问题。因为国内大多数游戏靠内购和广告盈利,游戏安装包也只是在早期象征性的收费,之后就会免费,所以很多开发者对iOS app游戏从只能在购买者设备安装变成可免费到处安装并不关注。     App游戏被破解攻击可能是宿命,正所谓,哪里有游戏,哪里就有

2017-03-18 20:35:57

iOS 并发编程之 Operation Queues

现如今移动设备也早已经进入了多核心CPU时代,并且随着时间的推移,CPU的核心数只会增加不会减少。而作为软件开发者,我们需要做的就是尽可能地提高应用的并发性,来充分利用这些多核心CPU的性能。在iOS开发中,我们主要可以通过OperationQueues、DispatchQueues和DispatchSources来提高应用的并发性。本文将主要介绍Oper

2017-03-18 20:32:39

GCD小结

0.BriefIntroduction   GCD,全称GrandCentralDispath,是苹果开发的一种支持并行操作的机制。它的主要部件是一个FIFO队列和一个线程池,前者用来添加任务,后者用来执行任务。   GCD中的FIFO队列称为dispatchqueue,它可以保证先进来的任务先得到执行(但不保证一定先执行结束)。   通过与线程池的配

2017-03-18 20:31:25

查看更多

勋章 我的勋章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!