ios 笔记
LIUSIYU641
这个作者很懒,什么都没留下…
展开
-
谈谈 iOS 中图片的解压缩
原文对于大多数 iOS 应用来说,图片往往是最占用手机内存的资源之一,同时也是不可或缺的组成部分。将一张图片从磁盘中加载出来,并最终显示到屏幕上,中间其实经过了一系列复杂的处理过程,其中就包括了对图片的解压缩。图片加载的工作流概括来说,从磁盘中加载一张图片,并将它显示到屏幕上,中间的主要工作流如下:1.假设我们使用 +imageWithContentsOfFile:转载 2017-03-01 11:09:14 · 549 阅读 · 0 评论 -
ios8 UITableView设置 setSeparatorInset:UIEdgeInsetsZero不起作用的解决办法
在ios7中,UITableViewCell左侧会有默认15像素的空白。这时候,设置setSeparatorInset:UIEdgeInsetsZero 能将空白去掉。但是在ios8中,设置setSeparatorInset:UIEdgeInsetsZero 已经不起作用了。下面是解决办法首先在viewDidLoad方法加入以下代码: if ([self.table转载 2015-04-13 16:56:20 · 753 阅读 · 0 评论 -
Crash日志符号化
1.符号化crash日志需要3样东西:1).crash日志本身(如:example.crash),从Xcode的organizer导出或者来自Itunes Connect.2).crash日志所对应的.app包(如:example.app)如果你有的是.ipa包,你可以解压后在Payload/文件夹下获得.app包3).crash日志多对应的.dSYM包 2转载 2015-03-05 17:09:15 · 811 阅读 · 0 评论 -
聊聊iPhone6 App分辨率适配的事
苹果直到iPhone6才开始推出真正的大屏手机,跟上时代潮流,除了乔布斯生前的严重抵制,软件分辨率适配无法统一也是苹果迟迟不肯动身的主要原因。封闭的iOS虽然避免了碎片化的风险,但是对于iPhone来说想要在每一代产品中保持变得异常困难,iPhone5第一次将屏幕升级到4.0英寸,拉长后的iPhone5让App Store中的软件上下各留一道黑边,开发者用了将近半年的时间才将这些黑边消除。转载 2015-02-28 17:56:26 · 872 阅读 · 0 评论 -
iOS应用如何实现64位的支持
苹果在2014年10月20号发布了一条消息:从明年的二月一号开始,提交到App Store的应用必须支持64-bit。详细消息地址为:https://developer.apple.com/news/?id=10202014a那们我们应该如何开始着手让自己的App支持64-Bit呢?基本知识从iPhone 5S的A7 CPU开始到刚刚发布的iPhone 6(A8 CPU)都转载 2015-01-26 10:22:38 · 715 阅读 · 0 评论 -
ios判断图片是png还是jpg或者jpeg
typedef NS_ENUM(NSInteger, NSPUIImageType){ NSPUIImageType_JPEG, NSPUIImageType_PNG, NSPUIImageType_Unknown};static inline NSPUIImageType NSPUIImageTypeFromData(NSData *imageDat原创 2015-01-21 11:36:04 · 5432 阅读 · 0 评论 -
UITableView 一直显示滚动条(ScrollBar Indicators)、滚动条Width(宽度)、滚动条Color(颜色)
在 IOS 中,对 UIScrollView 的滚动条(ScrollBar Indicators)的自定义设置接口,一直都是很少的。除了能自定义简单的样式(UIScrollViewIndicatorStyle)和是否启用外,对于 一直显示滚动条、自定义滚动条(ScrollBar Indicators)的Width 、颜色等,都是不能很方便的设置的。 虽然不能很方便,但是还是能实现的。通过一天的努力转载 2015-02-04 09:25:18 · 810 阅读 · 0 评论 -
iOS开发的22个奇谲巧技
1. TableView不显示没内容的Cell怎么办?类似于图1,我不想让下面的那些空显示。很简单,添加“self.tableView.tableFooterView = [[UIView alloc] init];”试过都说好,加完这句之后就变成了图2的样子。2. 自定义了leftBarbuttonItem左滑返回手势失效了怎么办?[cpp]转载 2014-12-30 11:35:39 · 804 阅读 · 0 评论 -
ios 模拟器沙盒的位置
模拟器沙盒的位置可通过两种方式找到该目录:1、直接通过命令 cd /User/userName/Library/Application Support/iPhone Simulator 2、在终端输入命令:chflags nohidden ~/ 显示隐藏的文件夹原创 2014-12-26 11:04:08 · 872 阅读 · 0 评论 -
ios 常见错误及解决办法(不定时更新)
1、ld: file not found: /Users/chenweidong/Library/Developer/Xcode/DerivedData/.......这类错误是因为将项目拷贝到新的电脑造成的错误(原因是项目名称不同造成的),解决办法:更改Build Setting中的项目名称就好了。 Build Setting ->Product Name 未完待续。。。。原创 2015-01-26 09:24:17 · 796 阅读 · 0 评论 -
UITableView的重用机制
iphone重用机制是苹果为了实现大量数据显示而采用的一种节省内存的机制,比如在UITableView和ScrollView 等地方。为什么要“可重用”???对于我们的项目来说,内存控制是必不可少的,如果一个tableview有几百个cell,这个内存消耗是很大的,而且有些cell里面都有image之类的很占内存的资源存在的话,那这样很容易出现memory warning甚至crash掉,这不是我转载 2014-10-20 09:18:10 · 573 阅读 · 0 评论 -
ios 实现app语言切换,不跟随系统
实现的功能是第一次app打开原创 2014-10-16 09:57:44 · 1669 阅读 · 0 评论 -
iOS系统的Javascript与Objective-C互操作指南
编写目的:本文重点阐述在iOS系统上通用的本地Objective-C代码与基于Javascript的Web的应用的互操作的基本方法,并通过具体范例说明两种代码的交互方式;阅读前提:熟悉iOS系统的UIWebView的功能、调用方法,相应的UIWebViewDelegate委托的使用方法,并了解Javascript函数的基本语法与函数调用方法;说明:正文部分红色字体表示Javascript代转载 2014-09-29 16:00:07 · 750 阅读 · 0 评论 -
dequeueReusableCellWithIdentifier的理解
dequeueReusableCellWithIdentifier,首先我们从字面上理解一下,这个单词翻译一下就是“出列的可重用的cell”,其实简单理解来说就是一个cell池,里面放的就是你之前创建过的cell。 iphone重用机制是苹果为了实现大量数据显示而采用的一种节省内存的机制,比如在UITableView和ScrollView 等地方。为什么要“可重用”?对于我转载 2014-10-24 11:24:24 · 1444 阅读 · 0 评论 -
iOS debug版本与release版本(问题)
为什么会写这一篇文章呢?是因为工作中遇到很诡异的情况,公司要求做一个封装C语言的静态库,真机debug版的静态库运行正常,而真机release版则出现问题(c代码中的参数运行发生变化或释放),所以异常,无奈,不知怎么解决~~~~各种调查,庆幸的是最后解决了很多情况下我们开发测试都是在debug模式下运行开发的,然而发布程序后或者切换至release版本下 程序就会出现各种问题,也就是说debu原创 2015-04-15 13:45:34 · 929 阅读 · 0 评论 -
IOS LocationManager定位国内偏移,火星坐标(GCJ-02)解决方法
IOS7 WGS-84转GCJ-02(火星坐标)CLLocationManager类可以实时的获得我们位置的经纬度,并且可以通过经纬度在MapView上定位:[objc] view plaincopyprint?//创建CLLocationManager对象 CLLocationManager *locat转载 2015-04-30 14:08:07 · 861 阅读 · 0 评论 -
iOS开发系列--网络开发
原文地址:http://www.cnblogs.com/kenshincui/p/4042190.html概览大部分应用程序都或多或少会牵扯到网络开发,例如说新浪微博、微信等,这些应用本身可能采用iOS开发,但是所有的数据支撑都是基于后台网络服务器的。如今,网络编程越来越普遍,孤立的应用通常是没有生命力的。今天就会给大家介绍这部分内容:Web请求和响应使用代理方转载 2015-12-22 11:55:42 · 675 阅读 · 0 评论 -
iOS开发系列--数据存取
原文地址:http://www.cnblogs.com/kenshincui/p/4077833.html概览在iOS开发中数据存储的方式可以归纳为两类:一类是存储为文件,另一类是存储到数据库。例如前面IOS开发系列—Objective-C之Foundation框架的文章中提到归档、plist文件存储,包括偏好设置其本质都是存储为文件,只是说归档或者plist文件存储可以选择保转载 2015-12-22 11:52:25 · 616 阅读 · 0 评论 -
iOS开发系列--地图与定位
原文地址:http://www.cnblogs.com/kenshincui/p/4125570.html概览现在很多社交、电商、团购应用都引入了地图和定位功能,似乎地图功能不再是地图应用和导航应用所特有的。的确,有了地图和定位功能确实让我们的生活更加丰富多彩,极大的改变了我们的生活方式。例如你到了一个陌生的地方想要查找附近的酒店、超市等就可以打开软件搜索周边;类似的,还有很多转载 2015-12-22 11:50:19 · 721 阅读 · 0 评论 -
iOS开发系列--通知与消息机制
原文地址:http://www.cnblogs.com/kenshincui/p/4168532.html概述在多数移动应用中任何时候都只能有一个应用程序处于活跃状态,如果其他应用此刻发生了一些用户感兴趣的那么通过通知机制就可以告诉用户此时发生的事情。iOS中通知机制又叫消息机制,其包括两类:一类是本地通知;另一类是推送通知,也叫远程通知。两种通知在iOS中的表现一致,可以转载 2015-12-22 11:47:12 · 645 阅读 · 0 评论 -
iOS开发系列--音频播放、录音、视频播放、拍照、视频录制
原文转自:http://www.cnblogs.com/kenshincui/p/4186022.html概览随着移动互联网的发展,如今的手机早已不是打电话、发短信那么简单了,播放音乐、视频、录音、拍照等都是很常用的功能。在iOS中对于多媒体的支持是非常强大的,无论是音视频播放、录制,还是对麦克风、摄像头的操作都提供了多套API。在今天的文章中将会对这些内容进行一一介绍:转载 2015-12-22 11:45:44 · 804 阅读 · 0 评论 -
iOS开发系列--通讯录、蓝牙、内购、GameCenter、iCloud、Passbook系统服务开发汇总
原文转自:http://www.cnblogs.com/kenshincui/p/4220402.htmliOS开发过程中有时候难免会使用iOS内置的一些应用软件和服务,例如QQ通讯录、微信电话本会使用iOS的通讯录,一些第三方软件会在应用内发送短信等。今天将和大家一起学习如何使用系统应用、使用系统服务:调用系统应用使用系统服务短信与邮件通讯录蓝牙社交Game Cent转载 2015-12-22 11:38:26 · 1574 阅读 · 0 评论 -
ios开发真机测试,导出ipa以及发布
相关文章保留一份真机测试教程http://www.th7.cn/Program/IOS/201407/233103.shtmlXcode如何生成ipa http://jingyan.baidu.com/article/ceb9fb10f4dffb8cad2ba03e.html发布教程见链接(百度经验):http://jingyan.baidu.com/article/f25原创 2015-03-26 14:20:04 · 600 阅读 · 0 评论 -
[Objective-C]关联(objc_setAssociatedObject、objc_getAssociatedObject、objc_removeAssociatedObjects)
目录(?)[+]关联 关联是指把两个对象相互关联起来,使得其中的一个对象作为另外一个对象的一部分。 关联特性只有在Mac OS X V10.6以及以后的版本上才是可用的。在类的定义之外为类增加额外的存储空间 使用关联,我们可以不用修改类的定义而为其对象增加存储空间。这在我们无法访问到类的源码的时候或者是考虑到二进制兼容性的时候是非常有用。转载 2015-08-05 09:34:13 · 480 阅读 · 0 评论 -
得到正确的颜色IOS7半透明导航栏
我们都知道ios 7以后导航栏增加了translucent属性,默认情况下,导航栏的translucent属性为YES。另外,系统还会对所有的导航栏做模糊处理,这样可以让iOS 7中导航栏的颜色更加饱和。如下图,是translucent值为NO和YES的对比效果:那么,如何在不更改translucent属性为NO的前提下来显示正确的颜色呢?试试下面代码吧~~~~~~在UIN原创 2015-08-26 14:36:17 · 921 阅读 · 0 评论 -
layoutSubviews总结
ios layout机制相关方法- (CGSize)sizeThatFits:(CGSize)size- (void)sizeToFit——————-- (void)layoutSubviews- (void)layoutIfNeeded- (void)setNeedsLayout——————–- (void)setNeedsDisp转载 2015-07-13 16:19:47 · 465 阅读 · 0 评论 -
iOS 7原生二维码扫描中文gbk编码乱码的解决
有的二维码生成的含有中文的数据编码是GBK编码,如百度二维码生成器,使用系统原生二维码扫描就会出现乱码,于是开始网上查阅,该试的方法都尝试过了,终于功夫不负有心人,问题得到了解决,先上代码 NSString *result=self.ScanResultString;//返回的扫描结果 NSData *data=[self.ScanResultString dataUsingEnco原创 2015-07-10 10:32:47 · 5080 阅读 · 5 评论 -
UIApplication详解
每个app有且只有一个UIApplication对象,当程序启动的时候通过调用UIApplicationMain方法得到的。可以通过sharedApplication方法得到。UIApplication对象的主要任务是处理用户事件的处理路径,例如分发一个UIEvent到另外一个对象去处理。UIApplication对象持有众多的UIWindow对象,因此可以组织app的展示。UIAppli转载 2015-06-10 09:51:03 · 701 阅读 · 0 评论 -
ios UITextView 添加水印提示(Placeholder)
1、定义textview的时候设置其属性:原创 2014-11-07 13:51:34 · 2323 阅读 · 0 评论 -
iOS视图控制对象生命周期
init、viewDidLoad、viewWillAppear、viewDidAppear、viewWillDisappear、viewDidDisappear的区别及用途init-初始化程序viewDidLoad-加载视图viewWillAppear-UIViewController对象的视图即将加入窗口时调用;viewDidApper-UIViewControl原创 2014-08-29 16:08:54 · 626 阅读 · 0 评论 -
Xcode5.1离线下载安装及使用iOS5模拟器进行开发调试的方法
转自:http://blog.csdn.net/kqygww/article/details/23737209Xcode5.1默认不支持iOS5版本的模拟器开发调试,在OS X Mavericks(10.9.x)下默认只能支持iOS6.1及以上版本的模拟器,在OS X Mountain Lion(10.8.x)下默认只能支持iOS6.0及以上版本的模拟器进行开发和调试,在此条件之下的版转载 2014-08-27 21:30:59 · 646 阅读 · 0 评论 -
UIApplication 详细解释-IOS
iPhone应用程序是由主函数main启动,它负责调用UIApplicationMain函数,该函数的形式如下所示: int UIApplicationMain ( int argc, char *argv[], NSString *principalClassName, NSString *delegateClassName ); 那么UIApplicationMai转载 2014-07-16 09:34:18 · 548 阅读 · 0 评论 -
UIView 渲染和内容管理
iOS中应用程序基本上都是基于MVC模式开发的。UIView就是模型-视图-控制器中的视图,在iOS终端上看到的、摸到的都是UIView。 UIView在屏幕上定义了一个矩形区域和管理区域内容的接口。在运行时,一个视图对象控制该区域的渲染;UIView继承自UIResponder,UIResponder是用来响应事件的类,UIView也具有响应事件的能力。所以说UIView具有三个基本的功能转载 2014-07-16 10:28:53 · 927 阅读 · 0 评论 -
iOS的三维透视投影
一.概述在iOS中使用CATransform3D这个结构体来表示三维的齐次坐标变换矩阵.齐次坐标是一种坐标的表示方法,n维空间的坐标需要用n+1个元素的坐标元组来表示,在Quartz 2D Transform中就有关于齐次坐标的应用,那边是关于二维空间的变换,其某点的齐次坐标的最后一个元素始终设置为1。使用齐次坐标而不是简单的数学坐标是为了方便图形进行仿射变换,仿射变换可以通过仿射变换矩阵转载 2014-06-04 11:35:30 · 849 阅读 · 0 评论 -
iOS保存数据的4种方式
在iOS开发过程中,不管是做什么应用,都会碰到数据保存的问题。将数据保存到本地,能够让程序的运行更加流畅,不会出现让人厌恶的菊花形状,使得用户体验更好。下面介绍一下数据保存的方式:1.NSKeyedArchiver:采用归档的形式来保存数据,该数据对象需要遵守NSCoding协议,并且该对象对应的类必须提供encodeWithCoder:和initWithCoder:方法。前一个方法告诉系转载 2014-06-04 15:29:17 · 744 阅读 · 0 评论 -
苹果App Store审核指南中文翻译(更新)
(注:苹果应用商店审核指南>中文翻译最近一次更新为2013-03-04,文中红色部分是相对于2013-03-04版本的新增内容,绿色部分代表更改的内容,蓝色表示苹果相关官方文档的链接。) 前言感谢您付出宝贵的才华与时间来开发iOS应用程程序。从职业与报酬的角度而言,这对于成千上万的开发员来说一直都是一项值得投入的事业,我们希望帮助您加入这个成功的组织。我们发布了《App Stor转载 2014-05-20 11:24:53 · 898 阅读 · 0 评论 -
iOS block讲解
本文来自台湾的某开发人员的博客,被墙,感觉讲的比较易懂,所以引过来。文字简体化了,原来是繁体,变数=变量,这个注意一下。本文的顺序是层层深入的,要想简单的了解,只看X.1 初探Block就好了本章学习目标:1. 了解何谓block。2. 了解block的使用方法。Block 是iOS在4.0之后新增的程式语法,严格来说block的概念并不算是基础程式设计的范围,对初学者来说转载 2014-05-15 15:34:34 · 679 阅读 · 0 评论 -
IOS UILabel调整行高间距(利用iOS 6的特性来手动调整行间矩)
#define LINESPACE 20 UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(0, 100, 320, 200)]; [label setBackgroundColor:[UIColor blackColor]]; [label setTextColor:[UIColor w转载 2014-04-11 09:38:07 · 1575 阅读 · 0 评论 -
Objective-C学习备忘单
终极版本的Objective-C教程备忘单帮助你进行iOS开发。 想开始创建你的第一个iOS应用程序么?那么看一下这篇很棒的教程吧:Create your first iOS 7 Hello World Application 注:这篇文章我写了三天,可能在一些必要的地方使用了编辑和说明,所以如果有任何疑问和修改建议请在下方评论。 这不是一个初学转载 2014-05-15 20:26:56 · 1495 阅读 · 0 评论 -
ios开发之键盘样式风格设置
一、键盘风格 UIKit框架支持8种风格键盘。typedef enum { UIKeyboardTypeDefault, // 默认键盘:支持所有字符 UIKeyboardTypeASCIICapable, // 支持ASCII的默认键盘 UIKeyboardTypeNumbersAndPu转载 2014-04-25 10:10:06 · 1030 阅读 · 0 评论