自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 const,static,extern,宏的作用和差别?

static:作用于变量:1.作用于局部变量,改变其存储方式(生命周期),变为静态的局部变量,编译时分配内存,程序退出时释放存储单元,作用域不变;2.作用于外部变量,外部变量本身就是缺省的静态变量,作用域很广,整个文件都有效甚至别的文件都可以引用,static只会改变其连接方式,变为只有本文件内有效。作用于函数:使用static用于函数定义时,对函数的连接方式产生影响,使...

2019-05-07 15:57:00 175

原创 iOS上线过程需要注意的问题

1、iOS 上线时,要先在App Store后台创建新的版本,如果有推送要把推送的版本号也一起更新,然后上传api包。2、adhoc测试的时候添加测试设备需要重新添加描述证书,而且如果xcode选择的是自动查找证书,那么就需要把本地的描述文件删除,然后重新添加才会成功替换。...

2019-03-13 19:24:21 293

原创 iOS GCD 多线程异步实践

1、GCD执行异步串行队列不能保证100%的顺序执行;2、不要频繁的读写磁盘,放到子线程里也会极大的影响性能和耗电;3、使用SDWebimage为cell.imageView赋值URL的时候不能使用异步线程,因为异步没办法控制SD里image的返回顺序,也涉及到线程安全的问题,在不改变源码的情况下异步没办法控制sd删除的Operation,导致请求的不同图片多次返回,而不会只返回最后一次请...

2018-11-12 15:32:51 241

原创 'application/x-www-form-urlencoded;charset=UTF-8' not supported" 转换请求方式application/json

网络请求报错:    error = "Unsupported Media Type";    exception = "org.springframework.web.HttpMediaTypeNotSupportedException";    message = "Content type 'application/x-www-form-urlencoded;charset=UTF-8' n...

2018-06-14 16:13:44 9107

原创 inhibit_all_warnings! 忽略cocoapods警告 添加后编译失效

我们可以inhibit_all_warnings! 忽略cocoapods警告,但是想要让其生效还要在终端执行 pod install 命令。

2018-03-30 17:11:00 3176

原创 ld: framework not found 在修改Other Link Flags时应该注意的问题

在修改Other Link Flags时应该注意的问题删除某一项第三方时要把第三方上面的-framework也删除掉,否则可能会报其他link的如.a文件的错误 ld: framework not found,很难找。...

2018-03-29 16:43:14 6633

原创 QQ登录获取unionID

如果开发者拥有多个移动应用、网站应用,可通过获取用户的unionid来区分用户的唯一性。https请求方式:GET https://graph.qq.com/oauth2.0/me?access_token=ACCESSTOKEN&unionid=1正确的Json返回结果 注意:返回的数据不是json格式callback({ "...

2017-02-27 19:08:39 11247 2

转载 ld: 1 duplicate symbol for architecture *** clang: error: linker command failed with exit code 1 (u

duplicate symbol _x in:    /Users/app/Library/Developer/Xcode/DerivedData/ChinaEnterprise-evaxoeaznbkdasfxetdeypsnzxtx/Build/Intermediates/ChinaEnterprise.build/Debug-iphonesimulator/ChinaEnterpri

2016-09-18 18:05:29 543

转载 iOS使用自定义字体

添加自定义字体的方法   要添加方正兰亭字体,首先需要一个ttf的字体库。 然后把这个文件添加到工程里面  在plist里面添加 添加成功后,就可以使用啦。但是我只拿到这个库,并不清楚fontname。用下面这段代码,打印出来系统可用字体。NSArray *familyNames = [

2016-06-04 15:46:07 418

原创 imageView的aspect fill枚举值

imageview设置aspect fill属性后会充满控件但不会拉伸变形,但如果图像本身大于imageView的大小会“撑破”图像视图,显得很宽很大,选中clip subviews属性就没事了。

2016-05-19 10:29:54 489

原创 升级cocoapods时遇到的错误

「ERROR: While executing gem … (Errno::EPERM) Operation not permitted – /usr/bin/pod」在终端输入如下命令后即可安装成功。sudo gem install -n /usr/local/bin cocoa pods

2016-05-12 17:40:33 240

原创 使用.a文件遇到的错误

导入第三方库的时候如果遇到  ld: warning: ignoring file 的警告和Undefined symbols for architecture arm64 :”_OBJC_CLASS_$_xx文件名", referenced from:的错误,可能是.a文件根本就不支持arm64指令集,也有可能是.a文件未导入,或者link路径不对判断.a文件支持那些指令

2015-11-20 17:31:35 367

原创 iOS屏幕旋转的bug

控制屏幕旋转的方法如果不好使,那就创建一个navigationController的类目;实现三个方法:-(BOOL)shouldAutorotate {    return [[self.viewControllers lastObject] shouldAutorotate];}-(NSUInteger)supportedInte

2015-11-05 16:28:38 384

原创 第三方分享遇到的特殊问题

第三方分享的时候,新浪分享没有shareUrl但是有链接,直接在分享内容里写入http打头的网址,就形成了链接;qq或qq空间分享的时候,QQAPI会检验shareUrl的真实性,如果不符合(如网址中有空格)会提示不能打开qq,控制台会输出日志 “url is nil”;

2015-10-27 16:48:07 278

原创 关于在Xcode7.0.1上使用CocoaPods

关于在Xcode7.0.1上使用CocoaPodsMac上安装CocoaPods在Xcode7.0.1上使用cocoapods创建项目文章总结由于换了台机器所以要重新安装CocoaPods,在网上也找了一些博客,但是或多或少都有些小坑儿,因为互联网的技术更新非常快,所以有些技术博客已经不能解决现在遇到的所有问题了。现在,我就把关于CocoaPods的一些问题还有解决方法更新一下。 使用前我

2015-10-14 13:59:38 1113

原创 iOS开发 Debug-发布时取消打印(NSLog)

iOS开发 Debug-发布时取消打印(NSLog)iOS开发中我们经常需要在Debug模式小调试代码,主要是打印变量的值,然而在发布的时候为了性能我们有需要删掉NSLog()。为了方便我们可以创建.pch文件,在其中编写如下条件编译语句:#ifndef DEBUG_MODE #define DLog( s, ... ) NSLog( @"<%p %@:(%d)> %@", self, [[NS

2015-09-10 19:59:55 981

原创 swift学习1

swift学习:基础常量和变量: 常量的值一旦设定就不能改,变量的值可改。 常量和变量必须在使用前声明,用let来声明常量,用var来声明变量。 let maximumNumberOfLoginAttempts = 10 var currentLoginAttempt = 0类型标注: 表示常量和变量存储的值的类型,如果不设定,那么就会根据之来进行类型推断。var welcomeM

2015-08-18 14:49:25 249

原创 KVO和KVC

KVO和KVCKVO 键值监听 Key Value Observing简称KVO,是一种观察者模式,利用它可以很容易实现视图和数据模型的分离。

2015-07-30 13:49:01 379

转载 KxMenu,一个垂直方向展示的弹出菜单

一个垂直方向展示的弹出菜单,因为学习了也有一段日子了,所以我们不能只做一个拖控件的,所以今天的这个demo,我们用纯代码方式来实现一下。首先,创建一个空的项目。然后我们添加一个Object-C类,不添加xib文件。之后我们把KxMenu类拷贝到我们的项目里,并且import进来。再然后在我们自己的Obj-C类中添加一个UIButton,同时要把KxMenu初

2015-03-02 17:14:26 531

转载 tcp和udp的区别

TCP和UDP的区别(转)TCP协议与UDP协议的区别    首先咱们弄清楚,TCP协议和UCP协议与TCP/IP协议的联系,很多人犯糊涂了,一直都是说TCP/IP协议与UDP协议的区别,我觉得这是没有从本质上弄清楚网络通信!TCP/IP协议是一个协议簇。里面包括很多协议的。UDP只是其中的一个。之所以命名为TCP/IP协议,因为TCP,IP协议是两个很重要的协议,就用

2015-02-28 20:31:53 305

转载 什么是stoket?

它是使用标准Unix文件描述符(filedescriptor)和其它程序通讯的方式。什么?你也许听到一些Unix高手(hacker)这样说过:“呀,Unix中的一切就是文件!”那个家伙也许正在说到一个事实:Unix程序在执行任何形式的I/O的时候,程序是在读或者写一个文件描述符。一个文件描述符只是一个和打开的文件相关联的整数。但是(注意后面的话),这个文件可能是一个网络连接,FIFO,管道,终端,

2015-02-28 20:27:21 970

转载 TCP协议的通讯方式----三次握手

TCP协议的通讯方式----三次握手一、TCP三次握手  传输控制协议(Transport Control Protocol)是一种面向连接的,可靠的传输层协议。面向连接是指一次正常的TCP传输需要通过在TCP客户端和TCP服务端建立特定的虚电路连接来完成,该过程通常被称为“三次握手”。可靠性可以通过很多种方法来提供保证,在这里我们关心的是数据序列和确认。TCP通过数据分段(Seg

2015-02-28 20:22:59 841

原创 ViewController 的loadView、viewDidLoad、viewDidUnload分别是什么时候调用

nit方法在init方法中实例化必要的对象(遵从LazyLoad思想) init方法中初始化ViewController本身 loadView方法当view需要被展示而它却是nil时,viewController会调用该方法。不要直接调用该方法。 如果手工维护views,必须重载重写该方法 如果使用IB维护views,必须不能重载重写该方法loadView和IB构建view 你

2015-02-28 20:12:45 651

转载 远程推送

首先是申请证书的网址https://developer.apple.com/ios/manage/overview/index.action登录成功以后,进入iOS 配置管理的 主页面.第一步操作是去创建一个新的App IDs创建成功后,会需要提供安全证书来激动推送服务,如下图:

2015-02-27 22:57:36 353

转载 什么是mvc

一、MVC的概念MVC是Model-VIew-Controller,就是模型-视图-控制器,这些都是什么东西呢?MVC把软件系统分为三个部分:Model,View,Controller。在cocoa中,你的程序中的每一个object(对象)都将明显地仅属于这三部分中的一个,而完全不属于另外两个。Model = 你的程序是什么(而不是你的程序是如何显示的)

2015-02-27 22:38:46 219

转载 http和socket简介

Http通信与Socket通信  知识点:  1.HttpURLConnection 接口:Get和Post方式 2.HttpClient接口:Get和Post方式  3.Socket通信:面向连接(TCP)和无连接的(UDP) 详述: HTTP通信  HTTP(超文本传输协议)用于传送www方式的数据,采用了请求/响应模型。客户端向服务器发送一个请求,请求头包含了请求的方

2015-02-27 22:25:26 384

原创 IOS中堆和栈的区别

管理方式:对于栈来讲,是由编译器自动管理,无需我们手工控制;对于堆来说,释放工作由程序员控制,容易产生memory leak。申请大小:栈:在Windows下,栈是向低地址扩展的数据结构,是一块连续的内存的区域。这句话的意思是栈顶的地址和栈的最大容量是系统预先规定好的,在WINDOWS下,栈的大小是2M(也有的说是1M,总之是一个编译时就确定的常数),如

2015-02-24 23:51:16 217

原创 OC的简介

Objective-C是非常“实际”的语言,有三大特性:继承,多态,封装。它使用一个用C写成、很小的运行库,只会令应用程序的大小增加很小,和大部分OO系统使用极大的VM执行时间会取代了整个系统的运作相反。ObjC写成的程序通常不会比其原始码大很多。而其函式库(通常没附在软件发行本)亦和Smalltalk系统要使用极大的内存来开启一个窗口的情况相反。 Objective-C的最初版本并不支持垃圾

2015-02-24 21:31:16 392

原创 简介gcd

基本概念什么是GCD?Grand Central Dispatch或者GCD,是一套低层API,提供了一种新的方法来进行并发程序编写。从基本功能上讲,GCD允许程序将任务切分为多个单一任务然后提交至工作队列来并发地或者串行地执行。GCD比之NSOpertionQueue更底层更高效,并且它不是Cocoa框架的一部分。除了代码的平行执行能力,GCD还提供高度集成的事件控制系统

2015-02-23 23:11:01 302

原创 刷新和加载

现在比较好用的第三方刷新和加载是MJRefresh, 使用方便, 还可以修改刷新提示的文字和图片;引入头文件  #import "MJRefresh.h"首先需要添加上拉加载尾部控件,方法:[tableV addFooterWithCallback:]block内添加网络请求添加下拉刷新头部控件, 方法:[tableVaddHeaderWithCallb

2015-01-31 22:22:16 268

原创 iOS-视图和模态

- (void)dealloc{    [super dealloc];}- (instancetype)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil{    self = [super initWithNibName:nibNameOrNil bundle:nibBun

2014-12-23 21:20:46 294

原创 iOS-初级数据持久化

存:把内存的东西放到硬盘中取:把硬盘的东西放到内存中简单对象:NSString,NSArray,NSDictionary NSData等系统的类复杂对象:model自己定义的类硬盘的东西全是二进制的 NSData是通用的沙盒的四个文件夹    1文件夹: Burdel -> {1.代码 2.资源文件 3.配置文件}  

2014-12-23 20:37:13 353

原创 iOS-UI-多线程

多线程:多线程是为了同步完成多项任务,不是为了提高运行效率,而是为了提高资源使用效率来提高系统的效率。线程是在同一时间需要完成多项任务的时候实现的.       多线程包括:GCD   NSThread   NSOperation   NSOperation是在GCD语言的基础上开发的,GCD类C语言,NSThread   NSOperation OC语法iOS允许用户自己开辟

2014-12-23 20:22:10 451

空空如也

空空如也

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

TA关注的人

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