Objective-C高级编程:iOS与OS X多线程和内存管理
这篇文章主要给大家讲解一下GCD的平时不太常用的API,以及文末会贴出GCD定时器的一个小例子。
需要学习的朋友可以通过网盘免费下载pdf版 (先点击普通下载-----再选择普通用户就能免费下载了)http: putpan.com/f cy1i1beebn7s0h4u9/
1.GCD...[2018/11/1]
iOS Push详述,了解一下?
欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~
本文由WeTest质量开放平台团队发表于云+社区专栏
作者:陈裕发, 腾讯系统测试工程师
商业转载请联系腾讯WeTest获得授权,非商业转载请注明出处。
原文链接:http: wetest.qq.com/lab/view/38...[2018/10/29]
在Vue中使用axios请求拦截的实现方法
一、前言
axios的基础使用就不过多的讲解啦,如何使用可以看axios文档使用说明·Axios中文说明
在这里和大家分享一下axios拦截在实际项目中的使用
很多人都看过axios的官方文档中拦截器这一栏,有的人可能会有点懵,因为文档只告诉你有这个东西,而不告诉你在什么情况下使用。很...[2018/10/26]
解决axios会发送两次请求,有个OPTIONS请求的问题解决axios会发送两次请求,有个OPTIONS请求的问题
问题描述:
Vue的开发者都知道axios,很多都用axios来进行数据交互,axios的默认请求头是Content-Type: application/json
使用这个请求头会出现向服务器请求两次的情况
为什么呢?
原因是:浏览器会首先使用 OPTIONS 方法发起一个预请求,...[2018/10/26]
详解iOS 验证码输入的实现思路
如图所示,现在很多App采用了类似下划线、方块等方式的验证码输入,直观美观!对于这种效果的实现方式,大概有以下几种方式:
1.多个UITextField组成
这种方式好处是有光标闪烁、但是在处理删除和动画效果时,就会显得有点笨拙,OFO应该是这样实现的,要严格处理好每个UITextF...[2018/10/24]
iOS-Xcode解决【workspace integrity couldn't load project'】
出现如标题提示的项目打不开情况,多半可能是因为Xcode版本不同,或者是SVN/Git使用导致
解决办法一:
删除冲突代码,"项目文件->Pod文件夹->Pods.xcodeproj",右键Pods.xcodeproj显示包含内容,找到project.pbxproj文件,打开找到...[2018/10/24]
使用Hbuilder将自己app发布到App Store(一)
1.如果你有mac系统那请看第二步。
首先需要一台虚拟机,还需要个插件要不没法装,都在这链接里面了
链接:https: pan.baidu.com 1N_pWJWFk-EJILTXuFr6w5g 提取码:d5ft
虚拟机安装完成后将插件解压
...[2018/10/22]
iOS实现简易的导航栏颜色渐变实例代码
前言
很多App首页要做成类似天猫和京东的导航栏,实现在页面滑动过程中导航栏渐变的效果。笔者之前在项目里用过一个三方,后来更新版本失效了,于是决定结合自己对导航栏的认识来实现一下这个功能。完成一个简易的iOS导航栏颜色渐变方案。
【文末附运行效果及demo】,下面话不多说了,来一起看看详细...[2018/10/20]
iOS 输入框限制输入字节数
iOS中限制输入框文字长度的方法有好多,百度一下,最常用的是这种:
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSStri...[2018/10/20]
iOS-WKWebView的使用
参考文章:http: www.cocoachina.com/io 20180831/24753.html
WK时苹果在iOS8.0之后推出的控件,相比于UIWebView:
内存消耗少;
解决了网页加载时的内存泄漏问题;
与HTML页面的交互更方便;
总之,其性能比UIWebV...[2018/10/18]
iOS根据图片url获取尺寸
可以在UIImage的分类中加入下面的代码,并且引入系统的ImageIO.framework
/**
根据图片的url获取尺寸
@param URL url
@return CGSize
*/
+ (CGSize)getImageSizeWithURL:(id)URL;
/**
...[2018/10/18]
ios开发多线程之NSThreadios开发多线程之NSThread
进程:
系统中正在运行的一个应用程序。
每个进程之间是独立的,每个进程均运行在其专用且受保护的内存空间内
线程:
1个进程想要执行任务,必须得有线程(每1个进...[2018/10/17]
ios开发GCD(2)-dispatch_semaphore_t信号量计数器
思考:现在有多个线程异步执行,我们想要同时最多只能执行2个或n个,该怎么办?
dispatch_semaphore_t
看代码解析:
NSLog(@"开始");
dispatch_semaphore_t t = dispatch_semaphore_create(2); 设...[2018/10/17]
iOS开发-本地存储(偏好设置,Plist,归档)
1. NSUserDefaults
TODO: 1.NSUserDefaults NSUserDefaults类除了可以存储数组、字典、NSdata外,还可以直接存储OC基本类型属性。但是不能直接作用到自定义对象.
...[2018/10/17]
iOS学习——浅谈RunLoop
RunLoop的字面意思是运行循环、跑圈,一个App启动后能一直执行,就是因为启动后进入了一个循环,在这个循环中不断监听各种状态、手势动作,并做出相应的响应。这个循环就是我们今天要探究的RunLoop。
1 RunLoop基础
1.1 RunLoop的基本作用
保持程序的持续运行(i...[2018/10/12]
iOS-实现后台长时间运行iOS-实现后台长时间运行
前言
一般APP在按下Home键被挂起后,这时APP的 backgroundTimeRemaining 也就是后台运行时间大约只有3分钟,如果在退出APP后,过十几二十二分钟或者更长时间再回到APP,APP就会回到刚打开时的状态,也就是首页;有的项目在被挂起后需要在后台运行一段时间,使有...[2018/10/12]
libstdc++适配Xcode10与iOS12
编译报错
当你开心得升级完新 macOS,以及新 XCode,准备体验了一把 Dark Mode 编程模式,开心的打开自己的老项目的时候,发现编译不通过了╮(╯_╰)╭
如果你的工程中如果依赖 libstdc++,无论是你本身的功能用 C++ 跨平台编写,还是你引入了某个 SDK...[2018/10/9]
App间相互跳转及图片分享
A-app:
Info--URL Types--URL Schemes:A-app(一个标识,允许别的app调用本App)
info.plist 添加白名单:
LSApplicationQueriesSchemes(Array)
B-app(String)
使用
- ...[2018/10/8]
iOS禁止所有输入法表情的方法
本文实例为大家分享了iOS禁止所有输入法表情的具体代码,供大家参考,具体内容如下 - (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replaceme...[2018/10/8]
iOS中Block循环引用的问题
说到循环引用问题,想必大家都碰到过吧,比如在使用Block的时候,使用__weakSelf来代替self解决等,但是对于这个,还是有不少可以探索的点,下面我就来说下,希望对大家有所帮助。
是否所有的Block中,使用self都会导致循环引用?
答案是否定的!如下面所示的这种情况
如上,使...[2018/9/30]
iOS之禁止所有输入法的表情
- (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text {
禁止所有输入法的表情
if ([self isCo...[2018/9/30]
【OC底层】OC对象本质,如 isa, super-class
Objective-C的本质
1、我们编写的Objective-C,底层现实都是C/C++,代码生成步骤如下:
2、在OC中的所有面向对象的实现,都是基于C/C++的数据结构实现的
3、将Objective-C代码转换为C\C++代码
xcru...[2018/9/28]
snapkit更新约束崩溃的问题snapkit更新约束崩溃的问题
最近在使用snapkit布局时,竟然发现更新约束会导致崩溃,为什么这样呢?
checkButton.snp.makeConstraints { (make) in
make.left.top.equalToSuperview()
...[2018/9/27]
使用SnapKit遇到的问题
最近在使用snapkit过程中遇到一个问题,在github上搜索之后发现另外一个有趣的问题 问题链接
frameImageContainer.snp.makeConstraints({ (make) in
make.width.equalTo(295).multipliedBy(0....[2018/9/26]
OC runtime学习笔记之关联对象
前言 Objective-C 不能动态的添加一些属性到对象上,和其他的一些原生支持这点的语言不一样。所以之前你都不得不努力为未来要增加的变量预留好空间。在 Mac OS X 10.6 中,Objective-C 的 Runtime 已经原生的支持这个功能了。 OC runtime 中关联对象的方法...[2018/9/26]
iOS使用WebView生成长截图的第3种解决方案
前言 WebView就是一个内嵌浏览器控件,在iOS中主要有两种WebView:UIWebView和WKWebView,UIWebView是iOS2之后开始使用,WKWebView是在iOS8开始使用,WKWebView将逐步取代笨重的UIWebView。 由于项目需要,新近实现了一个长截图库 ...[2018/9/26]
iOS下载图片失败iOS下载图片失败
一、具体问题
开发的过程中,发现某个界面部分图片的显示出现了问题只显示占位图片,取出图片的url在浏览器却是能打开的,各种尝试甚至找同行的朋友帮忙在他们项目里展示都会存在问题,最终发现通过第三方框架SDWebImage或者YYWebImage下载带有逗号的url图片链接都会下载失败,在下...[2018/9/25]
React Native封装Toast与加载Loading组件
React Native开发封装Toast与加载Loading组件
在App开发中,我们避免不了使用的两个组件,一个Toast,一个网络加载Loading,在RN开发中,也是一样,React Native官方并没有提供者这两个常用组件,需要开发者自己根据需求来自定义。作者就在其他组件的基础上在进行...[2018/9/25]
OC字典的使用
在OC中,字符串、数组、字典是最常见的对象类型,但是在这三个当中,字典的用法相对较少,因为字典的属性和方法比较少,但是一个字典的用法比较复杂,因为在一个字典当中,既可以包含字符串,也可以包含数组,数组里面的值是有序的,字典里面的键值对是没有序的,所以字典的使用往往和其他对象类型的使用混杂在一起...[2018/9/25]
iOS保存图片到相册崩溃
项目迭代开发的过程中,有用户反映保存图片到相册崩溃,最终自己测试出,在iOS11以下的手机正常保存,而iOS11之后的手机则会出现反映的问题.打印错误信息如下:
This app has crashed because it attempted to acce privacy-sensi...[2018/9/25]
@property & @synthesize & @dynamic 及相关属性作用探究@property & @synthesize & @dynamic 及相关属性作用探究
@property :
iOS6 引入关键词.
@property name; 指示编译器自动生成 name 的 setter 和 getter 方法 :
- (NSString *)name;
- (NSString *)name {
return _name;
}
...[2018/9/25]
OC协议、代理的简单使用
在不同类之间传递数据,我所学到的有三种,1.代理,2.block,3.通知。在这里,我们先来讲一下代理的使用,后面我会继续讲到block和通知。代理通常和协议是一起使用的,协议通常写在代理类里面,被代理的类要服从协议。
根据我的理解,在这种情况下:一个类里面的数据需要在另...[2018/9/25]
短视频去水印解析接口!客户端开发者的福音!短视频去水印解析接口!客户端开发者的福音!
本文适合这些人阅读:iOS开发者、Android开发者、小程序开发人员、H5开发人员等客户端开发人员。
今天要给客户端开发者们介绍的一个接口是iiiLab提供的视频去水印解析接口,接口特点:
1. 通用接口支持解析抖音、快手、火山、今日头条、西瓜视频、微博、秒拍、小咖秀、晃咖、微视、美拍、网易...[2018/9/25]

iOS 类似微博或朋友圈的信息流
文字收起和展开,行高自适应;图片九宫格,支持图片预览和视频播放;还想要什么功能就自己去搞吧,只是先做了个信息流展示。[2018/9/25]
iOS-xcconfig环境变量那些事(配置环境的配置) - Small-KiOS-xcconfig环境变量那些事(配置环境的配置) - Small-K
前言
在配置宏定义参数时,会发现一个问题,在需要临时修改或者测试一些数据时,修改宏,如果不修改,就多写一个,注释掉原来的,然后测试后,再换回来,当然了,如果一两个宏,可以这样,但是,如果每次改的比较多,建议用环境变量来配置,也就是用 xcconfig 控制 Debug 或 Release编译时,同...[2018/9/25]
iOS10 语音播报填坑详解(解决串行播报中断问题)
iOS10 语音播报填坑详解(解决串行播报中断问题)
在来聊这类需求的解决方案之前,咱们还是先来聊一聊这类需求的真实使用场景:语音播报。语音播报需求运用最为广泛的应该是收银对账了,就类似于支付宝、微信、收钱吧等的收款语音提示一样。在iOS 10 之前,苹果没有提供通知扩展类的时候,如果想要实现杀...[2018/9/25]
iOS----------适配iOS12
library not found for -lstdc++.6.0.9
原因是苹果在XCode10和iOS12中移除了libstdc++这个库,由libc++这个库取而代之,苹果的解释是libstdc++已经标记为废弃有5年了,建议大家使用经过了llvm优化过并且全面支持C++11的libc+...[2018/9/25]
云卡门禁苹果SDK_BLEDOOR_SDK_IOS_2016_12_15 - hi-latolo
BLElib.h
BLElib
Created by szbosk on 16/8/16.
Copyright ? 2016年 szbosk. All rights reserved.
#import <Foundation/Foundation.h&...[2018/9/25]
报错:library not found for -lstdc++.6.0.9
在Xcode 10开发中,
报错:library not found for -lstdc++.6.0.9
解决方案:将Xcode9的libstdc++6.0.9.tbd拷贝到Xcode10中使用
Xcode10中libstdc++相关的3个库(libstdc++、libst...[2018/9/25]
iOS 防止离屏渲染为 image 添加圆角
p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 14.0px Menlo; color: #008400; background-color: #ffffff }
p.p2 { margin: 0.0px 0.0px 0...[2018/9/25]
iOS 模块分解—「Runtime面试、工作」看我就 🐒 了 ^_^. - public-不知名开发者
引导
相信对于从事开发人员来说 runtime 这个名称都不陌生,就像我起初只知道「 runtime 叫运行时 」,后来知道 runtime 同样可以像 KVC 一样访问私有成员变量,还有「 给类动态添加属性:LNTextField.placeholderColor || 交换方法:image...[2018/9/25]
Carthage入门篇-安装和使用
在iOS开发过程中,用到最多的三方库管理工具也许是Cocoapods。Cocoapods会自动为你创建一个workspace,然后自动将你要用到的三方库集成到Project中,而整个过程,你只需要对Podfile进行修改,然后执行pod install(pod update)即可。 而Cartha...[2018/9/25]
关于Xcode10的那些事
前言
这里主要介绍一下Xcode10 版本主要更新的内容。
随着iOS12的发布,Xcode10已经可以从Mac App Store下载。
Xcode10包含了iOS12、watchOS 5、macOS10.14以及tvOS 12的SDK。另外,开发者可以从Xcode中看到当前Deployme...[2018/9/25]
Objective-C Block与函数指针比较
相似点
1.函数指针和Block都可以实现回调的操作,声明上也很相似,实现上都可以看成是一个代码片段。
2.函数指针类型和Block类型都可以作为变量和函数参数的类型。(typedef定义别名之后,这个别名就是一个类型)
不同点
1.函数指针只能指向预先定义好的函数代码块(可以是...[2018/9/25]
ReactNative之从HelloWorld中看环境搭建、组件封装、Props及State
开篇呢,先给大家问个好,今天是中秋节,祝大家中秋节快乐!!虽然是中秋节,但是木有回家还是总结一下知识点写写博客吧,想着昨天总结一下的,但是昨天和几个同学小聚了一下,酒逢知己总是千杯少呢,喝的微醺不适合写东西,所以就留到今天总结了。因为这段时间在工作中陆陆续续的接触到了一些RN开发的东西,还是需要总...[2018/9/25]
完整代理的简单实现完整代理的简单实现
main.m文件
#import <Foundation/Foundation.h>
#import "Person.h"
int main(int argc, const char * argv[]) {
@autoreleasepool {
inse...[2018/9/25]