iOS
滴水成川
滴水成川
展开
-
iOS开发Swift开发UI页面链式调用库推荐
【代码】iOS开发Swift开发声明式 UI原创 2023-08-06 23:06:54 · 782 阅读 · 0 评论 -
CDN: trunk Relative path: CocoaPods-version.yml exists 问题解决
问题描述pod repo update trunk 的时候会一直等待, pod repo update trunk --verbose 发现控制台输出如下提示后就一直等待CDN: trunk Relative path: CocoaPods-version.yml exists …, 观察网络状态也没有大量数据在传输,应该是卡住了;尝试解决Google 找到一个链接 https://stackoverflow.com/questions/59405617/cdn-trunk-relative-p原创 2022-03-21 17:10:27 · 8221 阅读 · 0 评论 -
Swift之Optional的map与flatMap
区别flatMap 闭包返回类型为 Optional,可以将非 nil 转为 nilmap 闭包返回类型为 非 Optional,不能将 非nil 转为 nil共同点当原值为 nil 时返回值肯定为 nil原创 2022-03-19 22:36:03 · 5225 阅读 · 0 评论 -
将 protobuf 打包成 iOS 静态库 xcode4.6.2
1、创建静态库工程 :protobuf2.(github上去下载protobuf 2.5.0 [本人用的是2.5.0])在protobuf的源代码根目录中创建一个文件夹xcodeproject3.将刚刚创建的的工程关闭,并将工程剪切到新建的文件夹内,并打开工程删除protobuf.h和protobu.m4.将下图的google文件夹拖到工程中...原创 2013-11-12 17:12:11 · 1898 阅读 · 0 评论 -
关于 Xcode 中 NSAssert() 的用法 ,以及 assert() 与 NDEBUG
assert() 是 C 语言里面的 宏 ,原创 2014-06-06 14:58:52 · 3650 阅读 · 0 评论 -
ios开发 如何利用 友盟统计 或者 百度统计 进行 错误分析
当我们的 app 开发完成 并切 上线之后, 会被原创 2014-06-06 15:42:59 · 3604 阅读 · 0 评论 -
IOS(xcode)程序中使用自定义字体的方法
1,添加对应的字体(.ttf或.odf)到工程的resurce,例如simkai.ttf 2,在info.plist中添加一项 Fonts provided by application (item0对应的value为simkai.ttf,添加多个字体依次添加就可以了) 3,使用时 aLabel.font=[UIFont fontWithName:@"XXX" size:30]转载 2014-07-17 18:39:07 · 1378 阅读 · 0 评论 -
提高Interface Builder高效工作的8个技巧
zhu提高Interface Builder高效工作的8个技巧本文译自:8 Tips for working effectively with Interface Builder(需翻墙)先来看看目录:介绍使view的Size与view中的Content相适应按住option键—观察所选中view与另外view边缘之间的距离Editor –>转载 2014-07-18 10:17:45 · 528 阅读 · 0 评论 -
xcodebuild xcrun ios 自动打包命令 范例
#/bin/shcd ~/Documents/FengYunZhiBo_5.0_Branchxcodebuild clean -configaration Releasexcodebuild -target FengYunZhiBo -sdk iphoneos build -configuration Release CODE_SIGN_IDENTITY="iPhone Distrib原创 2014-07-02 16:05:21 · 1219 阅读 · 0 评论 -
大部分 android 或者 ios 客户端 的网络通讯其实都是在 模仿 网页浏览器
当我们 ios开发,使用 asihttprequest 或者 afnetwork 类库 进行 网络请求的时候,其实我们就是在模拟 浏览器 。ios客户端,和浏览器的 后台,其实都是同一个东西 web server ,都是使用的 下面的 http 规则当你在浏览器输入 www.baidu.com 并回车,浏览器实际做的事情就是, 跟 百度服务器建立 tcp 连接,并将一下ASCII原创 2014-06-13 10:40:56 · 1037 阅读 · 0 评论 -
NSJSONReadingOptions 含义解释
typedef NS_OPTIONS(NSUInteger, NSJSONReadingOptions) { NSJSONReadingMutableContainers = (1UL <<0), NSJSONReadingMutableLeaves = (1UL 1), NSJSONReadingAllowFragments = (1UL 2)};原创 2014-07-30 15:01:38 · 3958 阅读 · 0 评论 -
iOS应用内付费(IAP)开发步骤列表
配置Developer.apple.com登录到Developer.apple.com,然后进行以下步骤: 为应用建立建立一个不带通配符的App ID用该App ID生成和安装相应的Provisioning Profile文件。配置iTunes Connectwww.2cto.com登录到iTunes Connet,然后进行以下步骤:转载 2014-08-05 14:42:22 · 685 阅读 · 0 评论 -
xcode5 树形浏览文档的方法 document tree index
file:///Users/FYZB/Library/Developer/Shared/Documentation/DocSets/com.apple.adc.documentation.AppleiOS7.1.iOSLibrary.docset/Contents/Resources/Documents/navigation/index.html原创 2014-07-30 14:41:46 · 821 阅读 · 0 评论 -
IOS开发之__bridge,__bridge_transfer和__bridge_retained
Core Foundation 框架Core Foundation框架 (CoreFoundation.framework) 是一组C语言接口,它们为iOS应用程序提供基本数据管理和服务功能。下面列举该框架支持进行管理的数据以及可提供的服务:群体数据类型 (数组、集合等)程序包字符串管理日期和时间管理原始数据块管理偏好管理URL及数据流操作线程和RunLoo转载 2014-07-31 12:52:47 · 790 阅读 · 0 评论 -
Xcode 5.1安装插件:规范注释生成器VVDocumenter
终于有时间停下来玩下Xcode的插件了,最近需要用下规范注释生成器,于是装了个插件用下。下面是安装过程(简单的不得了):1.前往GitHub下载工程文件: VVDocumenter-Xcode2.用Xcode打开工程,Command + BBuild成功后,可以在~/Library/Application Support/Developer/Shared/Xcode原创 2014-07-15 15:10:59 · 1174 阅读 · 0 评论 -
xcode 使用技巧分享 svn 相关
1、利用 xcode 查看 自己 在 上次提交原创 2014-08-22 19:01:47 · 935 阅读 · 0 评论 -
xcode 开发的一点小技巧 快速 加入 代码
相信大家 很多时候 为了原创 2014-08-22 18:32:33 · 706 阅读 · 0 评论 -
IOS_改变UITextField placeHolder颜色、字体
我们有时需要定制化UITextField对象的风格,可以添加许多不同的重写方法,来改变文本字段的显示行为。这些方法都会返回一个CGRect结构,制定了文本字段每个部件的边界范围,甚至修改placeHolder颜色,字体。– textRectForBounds: //重写来重置文字区域– drawTextInRect: //改变绘文字属性.重写时调用supe转载 2014-08-27 23:08:42 · 742 阅读 · 0 评论 -
ios 使用 通讯录 picker 快速 拾取 用户 手机号码 代码分享
ViewController.h#import #import #import @interface ViewController : UIViewController ABPeoplePickerNavigationControllerDelegate>@endViewController.m@implementat原创 2014-09-11 12:34:21 · 895 阅读 · 0 评论 -
dispatch_release dispatch_retain 在 最低版兼容本为 6.0 or later 并且使用 ARC 的情况下 error
对于dispatch_queue_t 对象来说,我们应该这么写#if OS_OBJECT_USE_OBJC@property (strong, nonatomic) dispatch_queue_t barrierQueue;#else@property (assign, nonatomic) dispatch_queue_t barrierQueue;#end原创 2014-09-12 12:30:24 · 2608 阅读 · 0 评论 -
iOS 审核被拒绝惨痛经历收集 拒绝原因多种多样
付费相关的 一些被拒绝上线的 原因:绕过苹果的付费渠道,游戏里的用兑换码兑换金币游戏里有实物奖励的话,一定要说清楚,奖励由本公司负责,和苹果没有关系内置付费的内容要明确告诉需要购买,购买前不能摆出来因为网站有收费,程序内必须去掉所有到网站的链接找不到in app purchase的项目对应的界面应用里有抽奖的相关的事,加声明原创 2014-08-13 13:04:37 · 4624 阅读 · 0 评论 -
内存管理 arc 相关文档翻译 ios开发
ARC 强制使用规则 ARC Enforces New Rules1、不能显示的调用 dealloc 方法,不能重写 或者调用 relation ,release ,retain count,autorelease. 包括@selector(retain),@selector(release), 等。你如果需要管理管理资源( 比如调用 setDelegate:nil )可以重写翻译 2014-09-18 15:29:23 · 1027 阅读 · 0 评论 -
ios8 sdk 推送兼容代码 registerForRemoteNotifications
原文:http://imtx.me/archives/1910.html昨天我在微博上吐槽:iOS 8 / Xcode 6 真是史上对开发者最糟糕的版本了。收到很多朋友表达同感。之所以这么说,倒不是针对 iOS 8 本身的特性来说的,相反,iOS 8 开放的那些扩展机制以及各种 Kit 对开发者来说是非常好。我抱怨的是 Apple 最近对软件质量的控制不转载 2014-10-26 12:15:02 · 6140 阅读 · 0 评论 -
ios开发使用xcode6打包protobuf静态库 解决了 官方引用 protobuf 导致的冲突问题 包含 arm64 支持
1、下载 protobuf-2.5.0-mast,并解压2、在解压后的 目录内部建立一个 目录 名字随便写,我这里写的 是 xcodeProject 如图:原创 2014-09-30 16:33:16 · 9735 阅读 · 16 评论 -
CocoaPods安装和使用教程
http://code4app.com/article/cocoapods-install-usageCocoaPods是什么?当你开发iOS应用时,会经常使用到很多第三方开源类库,比如JSONKit,AFNetWorking等等。可能某个类库又用到其他类库,所以要使用它,必须得另外下载其他类库,而其他类库又用到其他类库,“子子孙孙无穷尽也”,这也许是比较特殊的情况。总之小转载 2014-10-29 15:04:40 · 668 阅读 · 0 评论 -
ARM64移动处理器解惑 iphone5s
“64位”我们先来谈谈“64位”这个术语及其含义。大家对于这个术语一直比较困惑,很大一部分原因在于,它没有统一的、约定俗成的定义。然而,在大体上却达成了一些共识,尽管这些共识并未为大众所知。“×× 位”CPU通常是指两个部分的宽度:整数寄存器的宽度和指针的宽度。值得庆幸的是,在大多数现代CPU中,它们是一致的。“64位”通常是指CPU有64 位整数寄存器和64位指针。除了搞清楚“6转载 2014-10-11 11:59:35 · 1153 阅读 · 0 评论 -
xcode 新特性的 一点理解 enable module 和 link frameworks automatically
不知道大家有没有发现 现在的xcode6(包括xcode5 )新建的工程 就 不需要 自己 添加 framwork 了 ,只需要在 使用的 文件内 导入 对应的 头文件就可以使用了 例如 位置 framwork #import 或者写成 @import CoreLocation; 之所以会这样是因为 xcode5 的新特性 module 和 link原创 2014-11-14 13:01:56 · 3864 阅读 · 0 评论 -
ios 私有api 获取 设备内 bundleid 用户app列表
Class LSApplicationWorkspace_class = objc_getClass("LSApplicationWorkspace"); NSObject* workspace = [LSApplicationWorkspace_classperformSelector:@selector(defaultWorkspace)]; NSLog(@"allAp原创 2014-10-30 14:53:44 · 2630 阅读 · 0 评论 -
工作笔记:ffmpeg ios 打包 所有架构包括 arm64
自己对 shell 脚本这东西 虽然很gan xihttps://github.com/kewlbear/FFmpeg-iOS-build-script原创 2014-10-15 18:42:40 · 3614 阅读 · 0 评论 -
NSPredicate 筛选出数组类型的属性中 元素不为空的 predicateWithFormat:@"subSecTypeArray.@count
@interface SectionTypeModel : NSManagedObject@property (nonatomic, retain) NSString * id_Type;@property (nonatomic, retain) NSString * name_Type;@property (nonatomic, retain) NSNumbe原创 2014-08-22 15:47:34 · 3023 阅读 · 0 评论 -
objective-c 多线程并发售票问题 NSLock 临界资源 临界区
#import int ticketCount = 20;//总票数 (临界资源)NSLock * ticketLock; // 临界资源(票)锁void ticketSellor(int sellorIndex);//售票员int main(int argc,const char * argv[]) { @autorel原创 2014-11-24 14:52:23 · 1441 阅读 · 0 评论 -
ios开发 监听键盘frame变化事件获取键盘高度( ios8&ios7 横竖屏旋转时需要注意的问题)
监听 UIKeyboardWillChangeFrameNotification 消息时需要注意 键盘的高度获取 在 横竖屏的情况下是不同的 正确代码如下设置监听 :[[NSNotificationCenter defaultCenter]addObserver:self selector:@selector(keyboardFrameDidChange:) name:UIKeyb原创 2014-11-24 11:25:26 · 3740 阅读 · 0 评论 -
iOS工程如何支持64-bit arm64
苹果在2014年10月20号发布了一条消息:从明年的二月一号开始,提交到App Store的应用必须支持64-bit.转载 2014-11-21 15:08:28 · 2657 阅读 · 0 评论 -
ios开发 present 出来的viewcontroller 强制横竖屏切换代码分享 (代码不解释)
- (UIInterfaceOrientation)preferredInterfaceOrientationForPresentation{ if (self.isPortraitMode) { returnUIInterfaceOrientationPortrait; }else{ returnU原创 2014-11-24 11:57:54 · 2801 阅读 · 0 评论 -
利用wireshark 通过mac os网络共享 抓取 移动设备上发起的 http 网络请求报文 (附:升级 10.10 以后 wireshark启动闪退解决办法)
首先说下 已经安装了 wireshark 升级 mac os 到 10.10 后 闪退的问题 本人 mac mini 很早之前就安装了 wireshark 抓包,最近升级 10.10 后 发现 启动 wireshark 直接闪退 没有任何提示 ,解决的办法就是 更新 x11 到最新版本 。本人 运行去来 x11 选择 左上角的 检查更新 如图: 确实是可以检查到有更新的 ,但是 点原创 2014-12-02 16:03:21 · 3888 阅读 · 0 评论 -
ios开发 MFI (充电接口外接设备连接,通信) api ExternalAccessory 代码 片段分享
#import //监听设备的 连接 事件 [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(_accessoryDidConnect:) name:EAAccessoryDidConnectNotification object:nil]; [[NSNotificationCente原创 2014-12-03 19:32:50 · 5271 阅读 · 10 评论 -
mac os x 系统安装 genymotion android 模拟器
如果你有 apk 文件 想 运行一下看看 ,但是又没有 android 设备 ,那么 genymotion 将会是一个 很好的解决方案。下载链接: https://cloud.genymotion.com/page/launchpad/download/ 下载之前 需要在 官网上 注册一个 账号。下载安装原创 2014-09-02 13:32:18 · 11109 阅读 · 1 评论 -
ios开发 设备录音 音频流的 获取 ACC PCM 等都可以 苹果官方提供的 demo下载链接
developer.apple.com/library/etc/redirect/xcode/ios/602958/samplecode/SpeakHere/Introduction/Intro.html原创 2015-03-03 19:10:22 · 2471 阅读 · 4 评论 -
keyPathForValuesAffectingValueForKey ios开发 kvo相关
keyPathForValuesAffectingValueForKey 键值观察是一种使对象获取其他对象的特定属性变化的通知机制。控制层的绑定技术严重依赖键-值观察获得模型层和控制器层的变化通知。为接收某个属性的键值观察通知,以下三个要素是必须的:1,被观察的类当中你关心的属性必须遵循键值观察的。2,你必须使用以下方法,将观察方对象与被观察方对象注册:Fo转载 2015-03-04 11:55:06 · 2383 阅读 · 0 评论 -
ios常见面试题,答案不一定准确 ,我会不断完善 答案,前十个答案是我自己写的
1. 浅复制和深复制的区别? 答案:浅 copy 前后的区别就像 是 在一条狗的脖子上添加了 一条绳子,狗的数量没变还是那条狗深copy 就相当于 又 买了一条 一摸一样的 狗 ,并添加了绳子 ,和 copy 完成后 和 原来那条狗就再也没有关系了。2.类别(category)的作用?继承和类别在实现中有何区别?答案:作用 : 1、类别原创 2015-03-17 16:41:10 · 1439 阅读 · 0 评论