IOS Development
文章平均质量分 77
IOS开发技术,App Store上线运营经验。
bo.cui
这个作者很懒,什么都没留下…
展开
-
在XCode中使用SwiftGen管理你的图片、配色、多语言文件等
SwiftGen是一个工具,可以为您的项目资源(如图像、本地化字符串等)自动生成Swift代码,然后你就可以像使用一个Class类一样访问你的资源了。而且添加或更新资源后,SwiftGen也会自动更新用于访问资源的Class类。对于管理图片、配色、多语言文件等十分方便。原创 2024-03-06 01:33:24 · 1125 阅读 · 0 评论 -
关于iOS Widget(Locket Widget App)
最近一款UI风格很像Clubhouse的App,功能简单到不能再简单的Locket app火了,其主要功能就是通过桌面Widget显示一张朋友分享的照片,死气沉沉的互联网上终于出现了一点新东西。其实widget的概念自从ios8(2014年)开始就已经有了,但是从Widget出现到现在,一直没有得到很多人的关注,所以什么是Widget?Widget能实现哪些功能呢?什么是widget一句话描述:widget就是App可以在主屏幕上显示一个功能简单的小插件。...原创 2022-04-28 20:35:56 · 4350 阅读 · 0 评论 -
使用Xib(Storyboard)布局UIScrollView - 以及解决has ambiguous scrollable content width/height问题
概要在xib中自动布局UIScrollView一直都是个挺麻烦的事。尤其从Xcode11开始,苹果对UIScrollView引入了“Content Layout Guides”,这导致默认情况下使用之前的方式布局会遇到“has ambiguous scrollable content width/height”错误。下面分别介绍一下如何关闭“Content Layout Guides”并继续使用老版本的布局方法,以及如何使用新方法进行布局。解决has ambiguous scrollable c原创 2021-08-24 20:43:34 · 3434 阅读 · 2 评论 -
包含UIWebView不能提交到商店的问题
1:首先搜索自己的项目,然后全删掉或者改用WKWebView;2:第三方尤其是pod包含了UIWebView的,从第三方里删除或改用WKWebView,例如一个很常见的库AFNetworking中就包含了UIWebView的扩展:-首先删除掉AFNetworking中的两个扩展文件(UIWebView+AFNetworking.h/UIWebView+AFNetworking.m);-然后注释掉UIKit+AFNetworking.h文件中的#import "UIWebView+AFNetwor原创 2021-07-13 18:35:34 · 452 阅读 · 0 评论 -
组件接口(API)设计指南[5]-最后的思考
*返回目录阅读其他章节: http://blog.csdn.net/cuibo1123/article/details/39894477最后的思考 我通过困难的学习以及多年的失误,写了这片篇关于创建组件和api规则的文章。我在试着练习我的写作能力,虽然不可避免地会出现很多我没有提及的例子。 不是所有的规则都适用于所有情况,也没有一条规则在任何情况下适用。这里只是尽可能多的给你一些灵感,翻译 2014-10-10 15:27:21 · 2563 阅读 · 0 评论 -
组件接口(API)设计指南[4]-通知(Notifications)
规则23: 通知跟随委托方法 在委托方法(适当的,不是数据源方法)和通知之间存在着天生的对应关系。你可以在你代码的任何地方使用他们,而达到完全相同的目的。 如果你有一个关于事件发生的委托,你通常也应该提供一个同样目的的通知。做到即使把委托方法全部移除,使用者也依然可以通过通知来实现相应功能。 委托方法的参数应该与通知的‘userInfo(通知附加值)’内容匹配,通知与您在委托中直接传递参数有一个明显的区别,它通常需要将信息装载到字典(NSDictionary)中。 委托方法:翻译 2014-10-10 15:23:39 · 2559 阅读 · 0 评论 -
组件接口(API)设计指南[3]-委托(delegate)和数据源协议(data-source protocols)
我们几乎可以在任何组件中利用经典的委托(delegate)和数据源协议(data-source protocols)。如果你想显示一些数据,那么数据源协议可能就非常适合你,例如你有以下问题: 1:我有很多事物(有很多条数据)。 2:设置每个事物(数据)X的成员Y的值。 同样,在几乎所有情况下,一个经典的委托(delegate)协议形式如下: 1:这件事应当做吗(一个动作发生前,通常调用一个带有返回值的委托方法,决定动作是否执行)? 2:翻译 2014-10-09 14:29:17 · 3720 阅读 · 0 评论 -
组件接口(API)设计指南[2]-类接口(class interface)
规则1:使用当前平台的描述用语或构架 一个最常见的API错误设计是使用外来的规则,API属于一个特定的平台和相关开发者生态系统。你不能使用任何其他不同平台的描述用语或构架,这会污染你当前的代码库,并破坏你同伴的工作效率。 在编码前要充分了解你的目标平台和代码规范。例如,在IOS和OSX中,不使用异常机制处理错误。统一命名规则(规则要足够详细,但是也要足够简洁)。 了解什么是协议(protocol),委托(delegate),扩展(category)。始终在你的代码中使用术语。遵守构造翻译 2014-10-08 16:23:49 · 3901 阅读 · 0 评论 -
组件接口(API)设计指南[1]-要考虑的问题
开发人员与组件的显式交互主要有四种: 1. 类接口(classinterface),类公开的属性和方法。 2.委托协议(delegateprotocol),在相关的地方。 3.数据源协议(data-sourceprotocol),酌情。 4.规定的通知(notifications)。 我们设计的每一种交互,都应该需要用户刻意的去使用,不要做隐式的交互调用。另外,你应当思考两个关键问题: ○ 什么是控制?控制会影响界面和类方法。它影响的界面是显而易见的,比如一个按钮,或者一个滑块。而翻译 2014-10-08 15:58:41 · 4719 阅读 · 0 评论 -
组件接口(API)设计指南-目录
组件接口(API)设计指南-目录; 组件接口(API)设计指南[1]-要考虑的问题; 组件接口(API)设计指南[2]-类接口(class interface); 组件接口(API)设计指南[3]-委托(delegate)和数据源协议(data-source protocols); 组件接口(API)设计指南[4]-通知(Notifications); 组件接口(API)设计指南[5]-最后的思考;翻译 2014-10-08 15:54:04 · 5846 阅读 · 0 评论 -
在xcode6中使用矢量图(iPhone6置配UI)
不管是iphone6还是iphone5,所有ios8设备均加载@3x图像,@2x图像不被加载。使用图像文件和XCAsset均不行,stackoverflow上也很多人问这个问题,不知道是不是ios8的bug。(2014年9月23日测试) 3: 关于文中第一个工具:xcode6和ios8支持以Storyboard(或xib)作为Launch(启动)界面。只需要创建xib,然后在项目General里设置即可。使用Storyboard作为启动界面只支持ios8,在ios8以下不显示,但是可以和i翻译 2014-09-23 02:50:33 · 29821 阅读 · 3 评论 -
Xcode6编译SDWebImage报错解决方法(SDWebImageDownloaderOperation.m错误)
报错:Use of undeclared identifier '_executing' / '_finished';解决方法:在SDWebImageDownloaderOperation类的实现中(@implementation里)添加:@synthesize executing = _executing ;@synthesize finished = _finished;即可。原创 2014-09-20 19:09:17 · 23202 阅读 · 19 评论 -
xcode6模拟器不显示键盘解决方案
对于xcode6模拟器运行程序后不显示键盘。只需要打开模拟器,在菜单栏中选择:hardware -> keyboard -> connect hardware keyboard(快捷键shift+command+k)默认情况下,xcode使用电脑键盘作为外接键盘,不再弹出虚拟键盘。如下图:原创 2014-09-20 19:19:25 · 12538 阅读 · 2 评论 -
xcode6更新证书错误:No matching provisioning profiles found 解决方案
在Xcode中当你在更新了你得证书而再重新编译你的程序,真机调试会出现“Your build settings specify a provisioning profile with the UUID‘XXX’, however, no such provisioning profile was found. Xcode can resolve this issue by downloading原创 2014-09-20 15:44:06 · 63827 阅读 · 4 评论 -
iphone分辨率终极指南(含iphone6/6+)
点:在刚开始,所有的图形位置都由坐标点指定。点是抽象的单位,它们只在逻辑坐标系上有意义。像素渲染:基于点的图像被渲染为像素,这个过程被称为栅格化。点坐标和比例系数相乘得到像素坐标。更高的比例因子会显示更多细节。物理像素:设备屏幕所能呈现的分辨率可能要比上一步骤底。要显示之前的图像,必须以较低的像素分辨率重新采样(调整大小)。物理设备:最后,计算的像素被显示在物理屏幕上,PPI数决定一英寸装入多少像素,从而把较大的物理像素显示到真实屏幕上。翻译 2014-09-20 00:04:25 · 19356 阅读 · 4 评论 -
漫画《我》(一个程序员亲手画的)
作为一名程序员码农,画成这样还行吧??我要励志当美工!美工行业妹子多...原创 2014-06-11 11:38:37 · 627172 阅读 · 89 评论 -
UITextView in iOS7 doesn't scroll
UITextView in iOS7 has been really weird. As you type and are entering the last line of your UITextView, the scroll view doesn't scroll to the bottom like it should and it causes the text to be "clipp原创 2014-07-08 00:46:27 · 3316 阅读 · 6 评论 -
UIWebView显示本地图片的方法
在UIWebView显示本地图片,由此可借助UIWebView实现图文混排(内容编码成html格式即可)。原创 2014-08-11 17:52:08 · 11405 阅读 · 0 评论 -
objective-c启用ARC时的内存管理
在objective-c中,内存的引用计数一直是一个让人比较头疼的问题。尤其是当引用计数涉及到arc、blocks等等的时候。似乎ARC的出现只是让我们解放了双手,由于底层实现依然依赖引用计数,所以开启ARC后,只有对引用计数机制更加了解,才能避免Cycle Retain、Crash等问题的出现。 但是由于使用ARC可以显著提高编码效率,所以建议尽量启用arc,本文内容也将以arc为主,原创 2014-06-04 01:12:34 · 15243 阅读 · 3 评论 -
Avoiding duplicate symbol errors during linking by removing classes from static libraries
If you’re using a static library in your project and specifying the -all_load flag to ensure files containing Objective-C categories are loaded correctly, you’ll likely experience “duplicate symbol”转载 2014-01-22 19:51:34 · 1680 阅读 · 0 评论 -
让app在ios6上具有ios7的扁平效果
使用cocoapods在工程中加入UI7Kit,关于UI7Kit请自行google。加入到工程如果没安装cocoapods,则安装。(http://www.cocoapods.org)安装方法:(需要先安装Commoand Line Tools(XCode->Preferences->Downloads first.))sudo gem install原创 2013-09-20 20:11:06 · 3791 阅读 · 2 评论 -
ASIHTTPRequest详解
ASIHTTPRequest 是一款极其强劲的 HTTP访问开源项目。让简单的 API完成复杂的功能,如:异步请求,队列请求,GZIP压缩,缓存,断点续传,进度跟踪,上传文件,HTTP认证。在新的版本中,还加入了 Objective-C闭包 Block的支持,让我们的代码加轻简灵活。 下面就举例说明它的 API用法。发起一个同步请求转载 2013-01-24 14:08:28 · 1724 阅读 · 0 评论 -
ios 屏幕,状态栏(statusbar),程序窗口 尺寸获取和屏幕旋转时的尺寸变化
app尺寸,去掉状态栏CGRect r = [ UIScreen mainScreen ].applicationFrame;这个尺寸不会随着屏幕旋转而交换宽高,但屏幕旋转后,会自动修改宽高减掉状态栏高度。竖屏时(4寸):x=0, y=20, width=320, height=548横屏时(4寸):x=0,y=0,width=300, height=568原创 2013-01-18 11:44:47 · 12119 阅读 · 3 评论 -
iOS开发-从学习到产品/推广 全面总结
从学习到产品/推广的全面总结和经验-iOS个人开发者一周年 我熬夜写了这篇文章,天亮了,才发现外面的雪还在飘着。所有从学习到开发在到上线推广过程中遇到的问题,都写了进去。我想这片文章也许能帮助你开始新的征程。 留下我的新浪微博@lofocus,欢迎与我线上沟通。 下面穿插一小段广告,作为我辛勤劳动的回报,可以跳过,希望各位不要介意,也希望你能坚持看原创 2012-12-04 14:20:13 · 3621 阅读 · 6 评论 -
移动应用开发辅助服务推荐
Urban Airshiphttp://urbanairship.com/Urban Airship是一个提供推送服务的平台。开发者可以用统一的API来完成iOS、Android和BlackBerry三个平台的Push开发。除了基本推送服务外,Urban Airship还提供Rich Push:让Push信息可以带HTML、视频、音频等多媒体信息。此外,Urban Airship还原创 2012-12-04 01:25:18 · 1688 阅读 · 0 评论 -
app新作品上线,总结经验。
经过无数个日日夜夜的努力,我的新作 - 便签类应用:便签夹 终于上线了,欢迎大家下载使用。(支持所有ipad/iphone,包括iphone5和ipadMini)用过别忘了给我评价一下,又画界面又写程序,还的做推广,其实我也很不容易。鉴于中国用户的习惯,特意为中国用户做了免费版。这样大家就不用去做越狱破解那么麻烦的事了。免费版下载:https://i原创 2012-12-03 16:13:06 · 2219 阅读 · 0 评论 -
详解iOS应用程序内使用IAP/StoreKit付费、沙盒(SandBox)测试、创建测试账号流程!2012-6-25日更新iap恢复
转载自【黑米GameDev街区】 原文链接: http://www.himigame.com/iphone-cocos2d/550.html//——2012-6-25日更新iap恢复看到很多童鞋说让Himi讲解如何恢复iap产品,其实博文已经给出了。这里再详细说下:首先向AppStore请求恢复交易:1[[转载 2012-11-20 23:28:54 · 3946 阅读 · 0 评论 -
UIKeyboardWillShowNotification & UIKeyboardDidShowNotification report wrong keyboard height
The following code (sorry for the length) displays an odd behavior under iOS 4.3 (maybe others version too). In this example, there are three UITextFields that have three different sized keyboards.原创 2012-10-31 22:25:02 · 3505 阅读 · 0 评论 -
ios中限制UITextView的行数
//协议://原理:UITextView的内容视图会根据文本行数自动变化,计算UITextView内容的高度,当高度大于一定值时(字体高度乘以行数),则删除新输入的行。//限制UITextView的行数,- (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range原创 2012-10-31 21:33:17 · 19330 阅读 · 3 评论 -
多线程与托管以及堆栈共同作用造成的内存问题
《原创作品,转载请注明出处》花费三个小时,终于解决了一个特别隐蔽的内存问题。特此分享。希望各位不要在犯这类毛病~~真的会死人。高手全当娱乐新闻,只望和我一样水平有限的同仁不要犯相同的错误。问题代码及讲解如下。原始问题代码(经过简化处理):环境描述:mac, xcode4.2,iOS5(iphone4s),cocos2d工程,obj原创 2012-05-26 01:27:31 · 1477 阅读 · 0 评论 -
IOS基本界面元素window(窗口)\视图(view)介绍及生命周期和加载过程等
IOS基本界面元素: 要在屏幕上显示内容首先要创建一个窗口承载内容,要创建一个窗口,需要一个边框(frame),含有边框信息的底层 结构就CGRect。每个能够在屏幕上显示自己的对象都有一个边框,定义了他的显示区域,不过许多高层的视图类会自动计算这一信息。其他的那些类则在视图初始化时通过一个initWithFrame的初始化方法来设置。再来认识一个类:UIScreen。UIS原创 2012-04-24 03:07:06 · 5902 阅读 · 0 评论 -
iOS入门如何选择Swift和objective-c
学oc吧,学完估计也就淘汰了。学swift吧,短时间内普及几率太低,即便学完了,大部分老项目还是用oc..不学oc吧,放眼望去现在全是oc,swift完全没有用武之地。不学swift吧,说不上那天这玩意火了,现学现卖恐怕来不及,即便靠oc苟延残喘的活着,质量和薪水估计也一定不咋地,毕竟我们都有一个当大牛的梦。。看苹果态度和swift能力,个人觉得oc一定会淘汰,但是:短期内应该会共存!不可能所有项目立刻swift重写,维护就要求一定会oc。而且swift人才和大项目经验缺乏,很多公司应该不会立原创 2014-06-03 14:55:50 · 15661 阅读 · 1 评论 -
关于 Swift 的一点初步看法
虽然四点半就起床去排队等入场,结果还是只能坐在了蛮后面的位置看着大屏幕参加了今年的 Keynote。其实今年 OS X 和 iOS 的更新亮点都不少,但是显然风头和光芒都让横空出世的 Swift 给抢走了。这部分内容因为不是 NDA,所以可以提前说一说。Swift 是 Apple 自创的一门专门为 Cocoa 和 CocoaTouch 设计的语言,意在用来替代 objc。早上发布的时候有很转载 2014-06-03 13:41:50 · 2125 阅读 · 0 评论