郝萌主倾心贡献,尊重作者的劳动成果,请勿转载。

假设文章对您有所帮助。欢迎给作者捐赠,支持郝萌主,捐赠数额任意,重在心意^_^

我要捐赠: 点击捐赠

Cocos2d-X源代码下载:点我传送

游戏官方下载:http://dwz.cn/RwTjl

游戏视频预览:http://dwz.cn/RzHHd

游戏开发博客:http://dwz.cn/RzJzI

游戏源代码传送:http://dwz.cn/Nret1

1、设置 ImagePicker 的大小

ImagePicker 在 Popover Controller 总是以默认大小显示,设置 popoverContentSize 属性似乎无用。

解决的方法是将ImagePicker “包括”到一个定制的 ViewController 中,然后再 presentPopover 这个 ViewController :

UIViewController *containerController = [[UIViewController alloc] init];

containerController.contentSizeForViewInPopover = CGSizeMake(600,self.view.frame.size.height);

[containerController.viewaddSubview:_imagePicker.view];

_popController= [[UIPopoverController alloc] initWithContentViewController:containerController];

CGPoint p=[self.view convertPoint:button.center

fromView:sender.superview];

[_popController presentPopoverFromRect:(CGRect){p,CGSizeZero}

inView:self.view

permittedArrowDirections:UIPopoverArrowDirectionAny

animated:YES];

[_imagePicker.view setFrame:containerController.view.frame];// 非常重要

注意,popover的宽度最多600。

此外。_imagePicker 每次 presentPopoverFromRect 之前都必须 init一次。否则显示位置不对。

2、上传文件里文文件名称乱码问题

在iOSclient将文件名称用URL Encode编码。然后在服务端用URL Decode解码。

client:

NSStringEncodingenc=NSUTF8StringEncoding;

[request setData:datawithFileName [filename stringByAddingPercentEscapesUsingEncoding:enc]

andContentType:@"application/octet-stream" forKey:key];

服务端:

String filename=request.getParameter(“upload_file”);

filename=URLDecode.decode(s,”utf-8”);

3、Mac 64 bit Device

有时从SVN更新project后。Scheme会显示为Mac 64 bit Device,而且不同意执行程序。

这时仅仅须要又一次设置一下Target的DeploymentTarget就好(设置为模拟器或调试设备)。

4、去除调试程序的NSLog

编译參数Optimize Level依据不同的版本号设置。

比如对于Debug版本号是None。对于Release版本号是Fastest,Smallest。

这样,我们能够依据这个參数来又一次定义NSLog函数:

#ifndef __OPTIMIZE__

#define NSLog(...)NSLog(__VA_ARGS__)

#else

#define NSLog(...) {}

#endif

5、警告:no previous prototye for function

依据c规范。 假设函数没有參数。使用void作为函数參数。

函数声明应使用 “void functionA(void);”,而不能是”void functionA();”。

6、数组排序

方法一:

- (NSComparisonResult)compare:(Person *)otherObject {

return [self.birthDatecompare:otherObject.birthDate];

}

NSArray *sortedArray;

sortedArray = [drinkDetails sortedArrayUsingSelector:@selector(compare:)];

方法二: 

NSSortDescriptor *sortDescriptor;

sortDescriptor = [[[NSSortDescriptor alloc]initWithKey:@"birthDate"

ascending:YES] autorelease];

NSArray *sortDescriptors = [NSArray arrayWithObject:sortDescriptor];

NSArray *sortedArray;

sortedArray = [drinkDetails sortedArrayUsingDescriptors:sortDescriptors];

方法三( 10.6+):

NSArray *sortedArray;

sortedArray = [drinkDetails sortedArrayUsingComparator:^(id a, id b) {

NSDate *first =[(Person*)a birthDate];

NSDate *second =[(Person*)b birthDate];

return [firstcompare:second];

}];

7、Xcode 4的build文件夹在哪里?

Xcode 4 做了很多改变。你将不能找到build文件夹,你也无法找到Products文件组。

那么它把项目编译后生成的可执行文件放在哪里了呢?

答案就是“{USERNAME}/Library/Developer/Xcode/DerivedData/{PROJECT_NAME_AND_RANDOM_CRAP}/Build/Products/{BUILD_TYPE}/{PROJECT_NAME}.app”文件夹。

8、警告:no rule to process file

Xcode试图侦測每一种文件的类型。

当它觉得文件属于“源文件”类型(比方.js文件),

总是试图将它加到 Compile Sources中并试图编译。

解决这个警告的办法是。把这类文件从Build Phases的 Compile Sources移到 Copy Bundle Resources中。

9、警告:'initWithFrame:reuseIdentifier:'is deprecated

该方法在兴许版本号中将被抛弃。

请使用

-  initWithStyle:reuseIdentifier:

10、itms-services不工作

itms-services 被apple/iphone识别为一个特殊的字眼。它会校验provisioning profile中指定的证书并进行安装。

在安装这个.ipa文件前,要校验profisioning profile,这会连接到 "ax.init.itunes.apple.com"和 "ocsp.apple.com"。

假设你处于intranet中,请检查是否可訪问上述地址。

假设不能,你将无法使用OTA来安装应用程序。要求iOS 4.0以上。

注:上述地址不能訪问并不会影响安装。可是iOS会在执行时通过上述地址检查证书是否合法,假设安装是合法的,iOS会缓存检查结果(7天)。

郝萌主倾心贡献,尊重作者的劳动成果,请勿转载。

假设文章对您有所帮助,欢迎给作者捐赠。支持郝萌主。捐赠数额任意,重在心意^_^

我要捐赠: 点击捐赠

Cocos2d-X源代码下载:点我传送

游戏官方下载:http://dwz.cn/RwTjl

游戏视频预览:http://dwz.cn/RzHHd

游戏开发博客:http://dwz.cn/RzJzI

游戏源代码传送:http://dwz.cn/Nret1

iOS开发之十万个为什么<1>的更多相关文章

  1. 如果你恨一个程序员 忽悠他去做iOS开发(戏谑篇)

    .state { text-align: right; height: 16px; line-height: 16px; color: #999; padding-top: 5px; overflow ...

  2. 如果你恨一个程序员,忽悠他去做iOS开发

    如果你恨一个程序员,忽悠他去做iOS开发.不管他背景是cobel还是 java,送他一本iOS开发的书.这种书最好是国人写的,容易以偏概全一点,相比洋鬼子的书,更容易学到皮毛.这叫舍不得孩子套不着狼, ...

  3. 如果恨一个程序员,忽悠他去做iOS开发

    如果你恨一个程序员,忽悠他去做iOS开发.不管他背景是cobel还是 java,送他一本iOS开发的书.这种书最好是国人写的,容易以偏概全一点,相比洋鬼子的书,更容易学到皮毛.这叫舍不得孩子套不着狼, ...

  4. iOS 开发技术栈与进阶

    最近有一些开发朋友问我应该怎样提升自己的能力,回想起来做了这么久 iOS 开发,我也有过那种“让我做一个功能实现个需求我会做,但接下来怎样提高我不知道.”的时期,这里尝试列一下 iOS 开发的相关技术 ...

  5. iOS开发系列--Swift语言

    概述 Swift是苹果2014年推出的全新的编程语言,它继承了C语言.ObjC的特性,且克服了C语言的兼容性问题.Swift发展过程中不仅保留了ObjC很多语法特性,它也借鉴了多种现代化语言的特点,在 ...

  6. iOS开发系列--打造自己的“美图秀秀”

    --绘图与滤镜全面解析 概述 在iOS中可以很容易的开发出绚丽的界面效果,一方面得益于成功系统的设计,另一方面得益于它强大的开发框架.今天我们将围绕iOS中两大图形.图像绘图框架进行介绍:Quartz ...

  7. iOS开发之再探多线程编程:Grand Central Dispatch详解

    Swift3.0相关代码已在github上更新.之前关于iOS开发多线程的内容发布过一篇博客,其中介绍了NSThread.操作队列以及GCD,介绍的不够深入.今天就以GCD为主题来全面的总结一下GCD ...

  8. 总结iOS开发中的断点续传那些事儿

    前言 断点续传概述 断点续传就是从文件赏赐中断的地方重新开始下载或者上传数据,而不是从头文件开始.当下载大文件的时候,如果没有实现断点续传功能,那么每次出现异常或者用户主动的暂停,都会从头下载,这样很 ...

  9. iOS开发系列文章(持续更新……)

    iOS开发系列的文章,内容循序渐进,包含C语言.ObjC.iOS开发以及日后要写的游戏开发和Swift编程几部分内容.文章会持续更新,希望大家多多关注,如果文章对你有帮助请点赞支持,多谢! 为了方便大 ...

随机推荐

  1. iOS_自己定义毛玻璃效果

    终于效果图: 关键代码: UIImage分类代码 // // UIImage+BlurGlass.h // 帅哥_团购 // // Created by beyond on 14-8-30. // C ...

  2. 在centos上面开机自启动某个程序

    Systemd 是 Linux 系统工具,用来启动守护进程,已成为大多数发行版的标准配置.可以通过 systemctl --version 命令来查看使用的版本 常用命令 # 立即启动一个服务 $ s ...

  3. .NET Core 开发:永远的Hello Word

    从.NET Core发布到现在已经很长一段时间了,园子里的各路大神也和它打的火热,本着与时俱进,啥火学啥的原则,我也开始了我的.NET Core学习之旅. 简介 .NET从2002年发行到现在,从呱呱 ...

  4. pyCrypto python 3.5--转

    原文地址:https://gxnotes.com/article/198426.html 问题描述 我发现一些PyCrypto安装程序为Python 3.3和3.4,但没有任何Python 3.5. ...

  5. java实现sql批量插入参数

    背景: 需要更新一些不规范的时间格式,如将某个时间格式化为yy-MM-dd,实际上为 yy-MM-dd hh:mm:ss,并且需要提供回滚脚本. 例如:规范化时间的脚本如下: ,) WHERE tes ...

  6. HD-ACM算法专攻系列(17)——find your present (2)

    题目描述: 源码: #include"iostream" #include"string" using namespace std; bool IsFirstH ...

  7. 嵌入式Linux基础知识

    一.构建嵌入式开发环境 1.编译bootloader并烧写到板子中---uboot, 可以自己定制bootloader and logo 2.编译file system 并烧写--内嵌APP 3.编译 ...

  8. Cookie是存储在客户端上的一小段数据

    背景 在HTTP协议的定义中,采用了一种机制来记录客户端和服务器端交互的信息,这种机制被称为cookie,cookie规范定义了服务器和客户端交互信息的格式.生存期.使用范围.安全性. 在JavaSc ...

  9. <Android Framework 之路>Android5.1 Camera Framework(二)

    上一次讲解了一下CameraService的启动过程,今天梳理一下Camera预览的过程 StartPreview过程 首先,我们还是从应用层的使用入手 Camera.java (packages\a ...

  10. socket代码(简单)

    SERVER: #!/usr/bin/python # -*- coding: utf-8 -*- import socket import time s = socket.socket(socket ...