- 博客(265)
- 资源 (25)
- 收藏
- 关注
原创 iOS block内为什么要使用strongSelf
先摘抄一段来自AFNetworking的一段代码:__weak __typeof(self)weakSelf = self;AFNetworkReachabilityStatusBlock callback = ^(AFNetworkReachabilityStatus status) { __strong __typeof(weakSelf)strongSelf = weakSe...
2018-08-15 11:32:38 3626
转载 ios开发 上传到App Store 时出错. iTunes Store Operation Failed, An Error occurred uploading to the iTunes
ios开发 上传到App Store 时出错. iTunes Store Operation Failed, An Error occurred uploading to the iTunes store. 的解决方法,网上找了很多. 如下(当然没有解决我的问题,可以一试):今天在提交app的时候,最后一步报错, An error occurred uploading to the iTun...
2018-03-05 22:58:57 3484
原创 self sizing table view cell
iOS8+https://www.raywenderlich.com/129059/self-sizing-table-view-cells
2016-08-01 14:53:25 1297
转载 curl教程
curl tutorial with examples of usageCurl is a linux utility that is used to make HTTP requests to a given url. It outputs HTTP response to standard output and is actually very easy to use. Here
2015-11-27 13:32:28 1310
转载 Content Hugging Priority & Content Compression Resistance Priority 区别
AUTO LAYOUT MAGIC: CONTENT SIZING PRIORITIESSeptember 15, 2015 by Hector MatosOne of my personal favorite things about good code and well-designed features is
2015-11-18 11:29:17 2492
转载 Code Block Evaluation C Extension
GCC Code Block Evaluation C ExtensionLet's make this official: NSHipster's Objective-C trend of 2013 is code block evaluation assignment. Recommended by both Jim Kubicek and Maximilian Tagher (c
2015-09-23 23:37:22 1584
原创 如何在Mac OSX上提取App Store上的iOS应用信息
对于安卓,我们可以在任意的安卓市场上下载应用,然后把安装文件的后缀名从apk改为zip,最后再解压就可以获取到响应的多媒体资源和布局信息(如果这个项目没有代码混淆的话)。对于苹果上的iOS应用,原理和安卓差不多。下面用讲述一下如何获取ipa文件的信息。首先打开iTunes,进入到iTunes Store,在搜索框里输入你想要窥探的app名称,比如“微信”。点击获取"微信",下载完成后,
2015-08-27 15:01:32 2795
原创 改变状态栏和导航栏的透明度
步骤一:为UIImage类添加静态方法:extension UIImage { static func imageWithColor(color: UIColor) -> UIImage { let rect = CGRect(x: 0, y: 0, width: 1, height: 1) UIGraphicsBegin
2015-07-13 19:58:07 3128
原创 添加gitignore文件没有起作用怎么办
现在搭建的项目很多都是由git管理的。然后在开发的过程中,难免会生成许多临时文件,显然这些文件是不需要提交到git上的。虽然可以手动选择提交的文件,但是这样做不仅效率低下,而且容易出错。解决这个问题的一个通用方案是为项目添加.gitignore文件。我们可以在.gitignore文件里添加我们需要忽略的文件和文件夹,幸运的是gitignore.io可以为我们自动生成我们想要的.gitignore文
2015-07-11 22:55:48 3507
原创 如何在Swift中使用NSError
步骤一:声明NSError变量。一定要加"?",不加或者加"!"都不行。因为使用了optional,所以要用var而不用let。var error: NSError?步骤二:使用的时候在变量前加上"&"。NSJSONSerialization.JSONObjectWithData(data!, options: .MutableContainers, error: &error)之
2015-07-09 17:33:14 4658
原创 UIImagePickerController本地化控件文字
在使用UIImagePickerController时候,你会发现在选择照片或者拍照的时候,界面的许多控件都是英文的,比如"Cancel","Choose"等。那么如何将它们本地化呢,比如替换成“取消”和“选取“?甚至你调用系统其它库(比如ALAssetsLibrary)返回的各种字符串都是英文的。解决这个的方案是往Info.plist里添加key/value。CFBundleDevelo
2015-07-04 10:10:37 3132
原创 Swift API Availability Checking
在开发的过程中,难免我们会用到新的API,如果处理不当的话,对于低于该版本的设备在运行该应用的时候可能会奔溃,为了防止出现这种情况,我们需要在运行时判断API是否可用。iOS9中引进了新的View class,叫做UIStackView,它是一个View容器(可分为水平布局和垂直布局),与其他View不同的是,该View会自动管理内部view的布局,而无须编码实现自动布局,同时细心的你会发现,
2015-06-13 22:10:44 1973
原创 Storyboard Reference
在某些情况下,你开发的应用可能包含有各种各样的复杂界面,如果你使用Storyboard来管理这些界面,通常你会将这些界面按照相应的逻辑分成许多子模块,放在不同的storyboard里,比如注册相关的放到Register.Storyboard,图片相关的放到Photos.Storyboard,而主界面放到Main.Storbyoard。这么做的好处是不仅可以缩小每个storbyoard的打开速度,而
2015-06-12 23:01:30 2649
转载 本地化app名字
How to Localize App NamesIt is possible to localize app names directly within Xcode and you do not need to create multiple versions of the same app. The great and wonderful InfoPlist.str
2015-05-07 13:56:16 2681
原创 如何将Swift中的多参函数转化成Curring函数
假设我们有一个含有多个参数的函数,用于构建一个人的基本信息:func buildInfoWithName(name: String,#age: Int,#gender: String,#address: String,#phone: String) -> String { return "My name is " + name + ",I'm a " + g
2015-04-30 10:31:02 1224
原创 Xcode查看真机app沙盒内容
1. 打开Xcode2. 连接iPhone或者iPad3. 打开菜单Window-> Devices4. 在DEVICES选择连接的真机5. 在右侧的Installed Apps选择你要查看的app6. 点击下面的齿轮按钮,选择Download Container,保存到桌面,生成XXX.xcappdata文件7. 在桌面找到该文件,右键以包(package)的形式打开文件
2015-04-29 10:22:43 11177
原创 Xcode的archive菜单选项是灰色的
如果当前Xcode选择的设备是模拟器,那么"Archive"是灰色的,不能点。把当前设备设置成连接的真机设备或者默认的"iOS Device","Archive"会变成黑色。
2015-04-21 16:35:30 22510
原创 获取iPhone或者iPad的UDID
1.连接iPhone或者iPad到电脑。2. 打开iTunes。3. 在Summary(概要)右边点击序列号,Serial Number会变成UDID(如果不是UDID,请继续点击)。4. command+c(MAC) 或者 Ctrl+c(Windows)复制UDID。5. 粘贴到你需要的地方。 (比如到Member Center的device里。)参考
2015-04-21 16:23:59 1854
原创 Apple审核guidelines
https://developer.apple.com/app-store/review/guidelines/
2015-04-17 10:54:07 594
原创 UIAlertView点击按钮不会销毁自身View
子类化UIAlertView,复写方法- (void)dismissWithClickedButtonIndex:(NSInteger)buttonIndex animated:(BOOL)animated;/// UIAlertView subclass which can't be dismissed when buttons clicked.@interface Fix
2015-04-15 10:30:22 2204
转载 针对项目中部分文件开启或者关闭ARC
Making ARC and non-ARC files play nice togetherOctober 10, 2011 by Christopher SextonIf you want to exclude a file from being compiled with ARC you can do so by setting a flag on the .m file
2015-04-10 16:46:49 2253 1
原创 AppDelegate生命周期回调顺序
1. 应用初次启动:- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions- (void)applicationDidBecomeActive:(UIApplication *)application2. 连续点击
2015-03-09 10:04:22 1206
转载 Xcode及模拟器SDK下载
如果你嫌在App Store下载Xcode太慢的话,你也可以选择从网络上下载:Xcode下载Xcode 6.2 Beta 2:http://pan.baidu.com/s/1c0pNFC8Xcode 6.2 Beta:http://pan.baidu.com/s/1i3xe1qHXcode 6.1.1 GM SEED:ht
2015-01-26 15:18:44 983
原创 MagicalRecord如何存储实体
Poo *poo = [Poo MR_findFirst];// Update the entity in the block of saveWithBlock:[MagicalRecord saveWithBlock:^(NSManagedObjectContext *localContext) { Poo *localPoo = [poo inContext:localContex
2015-01-23 23:07:34 1594
原创 日期格式如何获取星期几
This should display 'Tue':new SimpleDateFormat("EEE").format(new Date());This should display 'Tuesday':new SimpleDateFormat("EEEE").format(new Date());So your specific example would be:new Sim
2015-01-23 21:58:51 2964
原创 UIScrollview 键盘遮挡问题
#pragma mark - UIKeyboard Obscure Problem- (void)handleKeyboardStuff { [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWillShow:) name:UIKeyboardWillShowNo
2015-01-22 18:15:14 1834
原创 UILabel如何在Interface Builder中换行
在Interface Builder中,选中要换行的UILabel,在属性面板中,选中文本框,输入第一行文字,预要换行时,按住Optional(Alt)+Enter,自动切换到第二行,(如果直接按enter键,则是确定输入的内容,不会自动换行),同时别忘了将Lines属性设置为0。
2015-01-21 10:15:24 3268
原创 如何通过代码添加ChildViewController
在Storyboard中可以通过使用embed segue连接Parent ViewController和Child ViewController。(通过Object Library的Container View可实现)如果想在代码中添加Child ViewController,步骤如下:假设我们要在Parent ViewController的ContainerView里添加Chi
2015-01-17 23:56:14 2155
原创 如何读取代码行数
使用 CLOC (Count Line of Code)前提条件:1. 预装有perl 2. 下载CLOC. http://cloc.sourceforge.net/解压安装包,得到cloc-version.pl打开命令行,定位到解压文件的文件夹,然后敲入命令perl cloc-version.pl YourProject.tar.gz
2015-01-13 18:58:51 4694
原创 如何在Swift中创建和使用Model [ MagicalRecord ]
步骤一:Command + N - > iOS -> Core Data -> Data Model.步骤二:打开xcdatamodelId,创建一个Entity和属性。步骤三:选中创建的Entity,在右边的面板中选择第三个Tab(Data Model Inspector),在class一栏中添加项目名前缀。(ProjectName.EntityName)步骤四:创
2014-12-28 22:09:28 3671
原创 如何让App Extension访问Cocoapods引入的第三方库
步骤一:选中项目,点击App Extension target(这里是Today Extension)步骤二:在右边的Tabs中,选择Build Settings,在过滤框中输入"bridg"在弹出的输入框中,输入你的桥接文件名(这个文件是将Objective-C写的文件暴露给Swfit使用,如果没有这个文件名,可以新建一个头文件,名字随意,一般命名规则是项
2014-12-28 21:21:01 5264 4
原创 AppleWatch如何打开Glance
步骤一:打开Edit Scheme...步骤二:在弹出的对话框中,左边的菜单选中“Run",点击右边的Executable下拉框,选择Glance 开头的选项,然后单击Close关闭对话框.步骤三:选择WatchKit App Scheme,点击Run按钮。如果没有出现任何问题的话,Glance会是这个样子的:这是
2014-12-23 10:55:47 2308
原创 如何解决警告linking against dylib not safe for use in application extensions
因为app extension限制了某些API的使用, ( App Extensions不能使用的一些API ) ,因此在自定义自己的framework后,这个framework可能包含了某些在App Extensions里不能使用的API,因此为了安全起见才会给出这个警告。下面是清除警告的方法:选中自定义framework的target(这里的例子是DarwinKit)
2014-12-22 17:45:30 4125
原创 ioss 8.1 to 8.2 api differences
UIKit ChangesUIKitUIApplication.hAdded -[UIApplicationDelegate application:handleWatchKitExtensionRequest:reply:]UILocalNotification.hAdded UILocalNotification.alertT
2014-12-19 00:15:05 741
原创 如何防止用户同时点击多个button
设置button的exclusiveTouch属性为true即可。btn.exclusiveTouch = true此属性默认为false
2014-12-18 21:54:43 1928 1
原创 当自定义leftBarButtonItem(s)左边缘滑动失效时
如何开启:1.ViewController实现 UIGestureRecognizerDelegate 协议class YourViewController: UIGestureRecognizerDelegate { func viewDidLoad() { navigationItem.setLeftBarButtonItems([...,...]) //
2014-12-18 21:51:23 1667
iOS汉字首字母获取
2015-06-29
Swift documentation
2014-06-05
基于SSH晒晒图网站
2013-01-18
android_service_电话录音
2012-10-29
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人