iOS开发
CINNS
向前跑!!!!
展开
-
ios中UITextfield中禁止输入Emoji
在iOS中,可以即使可以禁止使用Emoji键盘,但是也可以通过键盘打出Emoji,在实际开发中,可能需要在输入框中禁止使用输入Emoji,可以通过以下的方式来对输入内容进行过滤,- (void)viewDidLoad { [superviewDidLoad]; // Do any additional setup after loading the view,原创 2015-12-25 23:25:20 · 3146 阅读 · 1 评论 -
上传AppStore会碰到:Failed to locate or generate matching signing assets(Missing iOS Distribution signing)
原文转载自:http://www.jianshu.com/p/cda1790ea317从2月14号开始,上传AppStore时可能会碰到这个问题:Failed to locate or generate matching signing assets Xcode attempted to locate or generate matching signing assets and failed t转载 2016-02-16 20:17:09 · 638 阅读 · 0 评论 -
CAGradientLayer基本使用方法
Gradient:本身就是梯度的意思,所以在这里就是作为渐变色来理解 1,CAGradientLayer用于处理渐变色的层结构 2,CAGradientLayer的渐变色可以做隐式动画 3,大部分情况下,CAGradientLayer时和CAShapeLayer配合使用的。 4,CAGradientLayer可以用作PNG的遮罩效果关于CAGradientLayer的坐标系统 为什么要提到原创 2016-03-30 17:19:01 · 2281 阅读 · 0 评论 -
使用NSClassFromString加载类
NSClassFromString是一个很有用的东西,尤其在进行iPhone toolchain的开发上。正常来说,id myObj = [[NSClassFromString(@"MySpecialClass") alloc] init];和id myObj = [[MySpecialClass alloc] init];是一样的。但是,如果你的程序中并不存在MySpecialClass这个类,下原创 2016-02-22 11:14:24 · 656 阅读 · 0 评论 -
CGAffineTransformMakeTranslation和CGAffineTransformTranslate
CGAffineTransformMakeTranslation : 每次都是以最初位置的中心点为参考CGAffineTransformTranslate 每次都是以传入的transform为参照(既 有叠加效果)这两个动画属性属于视图的平移属性,不会改变视图的大小,只会通过平移将视图的位置改变,是一种相对位置的改变,例如下代码:- (void)viewDidLoad { [super vi原创 2016-04-01 10:10:00 · 4084 阅读 · 0 评论 -
Swift中定义protocol,定义optional方法
在swift中定义一个protocol相比objective-c来说,要更加简单,我们只需要通过一下方法就可以定义一个protocol:定义不包含optional方法的protocolprotocol XXXXXXDelegate : NSObjectProtocol { func XXXXXXX()//代理方法}在swift中,说有的Protocol都是继承自NSObjectProtoco原创 2016-02-23 20:18:55 · 2749 阅读 · 0 评论 -
swift中创建一个单例
在swift中创建单例,相比在Objective-C更加的便宜,首先创建一个继承自NSbject的MyINstance类,实现的代码如下://在swift中,类方法中是不允许定义静态变量的,所以定义一个静态变量,应该写在方法外面static var once_t: dispatch_once_t = 0static var instance: MyInstance?//用来获取单例对象的方法,原创 2016-02-28 18:01:18 · 452 阅读 · 0 评论 -
-canOpenURL: failed for URL: "xx" - error:"This app is not allowed to query for scheme xx"
控制台输出如图是在我启动一个 Xcode 7 + iOS 9 的 App 之后,控制台的输出。这在 Xcode 6.4 + iOS 8 时,是不会有的情况,原因是【为了强制增强数据访问安全, iOS9 默认会把所有从NSURLConnection 、 CFURL 、 NSURLSession发出的 HTTP 请求,都改为 HTTPS 请求:iOS9.x-SDK编译时,默认会让所有从NSURLConn原创 2016-01-25 12:19:48 · 1383 阅读 · 0 评论 -
在iOS9中突破微信App跳转的限制
原文转载自:http://www.nero.today/index.php/2016/01/26/appswitchonwechatonios9/前言微信的普及程度相信不需要多言了,稍微回忆一下自己上一条短信是什么时候,上一条微信又是什么时候就知道了。 因此通过微信传播也是绝大部分App的一个重要手段,但是在iOS7微信出的新版本,就开始不允许从微信直接跳转到对应的App中了。 所谓上有政策,下转载 2016-03-15 14:57:28 · 12536 阅读 · 0 评论 -
Xcode打包脚本
最近发现了在工作中,发现了一个比较好用的Xcode打包脚本,打包速度比Xcode快很多,使用起来也非常方便. 项目地址:点击进入github 项目中的README上有很详细的使用方法,可以参考上面的,我目前只用到了基本的打包功能,具体步骤如下使用方法:配置好Xcode中的证书,发布证书或者打包证书在终端中进入Xcode项目目录,例如项目在~/iphone文件夹中,我们只需要进入这个目录即可,原创 2016-04-06 15:09:05 · 390 阅读 · 0 评论 -
xcode 中代码块存放位置
代码块位置~/Library/Developer/Xcode/UserData/CodeSnippets 终端中 open ~/Library/Developer/Xcode/UserData/CodeSnippets打开这个目录后,就可以将之前保存的代码块放在这个目录或者将自己的代码块拷贝出来到其他地方使用了原创 2016-05-06 18:58:08 · 2177 阅读 · 0 评论 -
UITextView中禁止输入表情Emoji
在UITextView代理方法中调用以下2个方法- (void)textViewDidChange:(UITextView *)textView { if (![self isValidString:textView.text]) {//如果输入框中有表情 textView.text = [self disableEmoji:textView.text];//去掉输入框的表情原创 2016-01-26 15:12:00 · 782 阅读 · 2 评论 -
如何让父UIView的透明度不影响Subview的透明度
转至:原文链接今天发现设置UIView设置alpha或者设置其layer的opacity时,其Subview的透明度也会跟着变。 解决方法如下:[[UIColor blackColor] colorWithAlphaComponent:0.5]原创 2016-07-09 14:49:49 · 612 阅读 · 0 评论 -
XIB 设置UIView的圆角边框等属性
在开发中,经常会用到一些圆角效果,或者边框效果,经常用的方法是通过代码直接去设置,比较方便快捷; 但是当我们通过 XIB创建出一个控件后,也需要这样的一些圆角或边框效果,能不能直接通过 XIB里面的一些方法直接设置呢?答案是有的其主要设置的方式是通过在 XIB操作栏的User Defined Runtime Attributes中通过 KEY PATH去设置当前控件的属性,具体步骤如下图所示:原创 2016-07-30 01:23:20 · 15107 阅读 · 0 评论 -
iOS 判断是否安装了某个APP(如新浪微博)
我在做iOS开发的时候,想要判断是否安装了某个APP,如我在做友盟第三方分享的时候,友盟提供了判断微信,QQ等应用是否安装的方法,但是我要要判断微博是否安装,如果安装,我才显示图标,没有安装,我 就隐藏图标,因此得到的方法如下: 通过一句代码即可判断:BOOL hasSinaWeibo = [[UIApplication sharedApplication] canOpenURL:[NSURL U原创 2016-02-19 10:55:10 · 9999 阅读 · 3 评论 -
Xcode官方直接下载地址(离线下载)
在下载Xcode的时候,一般都需要登录开发者账号,但是通过以下链接,可直接下载官方的Xcode;如:我下载7.2.1版本的Xcode地址为http://adcdownload.apple.com/Developer_Tools/Xcode_7.2.1/Xcode_7.2.1.dmg当需要下载别的版本的时候,只需要将版本号更换为对应的版本号即可 http://adcdownload.apple.co原创 2016-03-04 14:41:47 · 3918 阅读 · 0 评论 -
解决键盘遮挡输入框问题
- (void)viewDidLoad { [superviewDidLoad]; // Do any additional setup after loading the view, typically from a nib. //创键10个输入框 for (int i=0; i10; i++) { UITextField原创 2015-12-26 00:04:25 · 577 阅读 · 0 评论 -
NSUserDefault(沙盒)
NSUserDefaults 是用来存储轻量级数据的一种方式(持久化存储),每个应用程序都有单独只能自己访问的路径.这个就是沙盒 //沙盒路径 NSString *path =NSHomeDirectory(); NSLog(@"path==%@",path);NSUserDefaults的原理,就是将plist文件存到沙盒中//取到沙盒对象,单例原创 2015-12-26 00:09:10 · 575 阅读 · 0 评论 -
xib、storyboard文件的使用
xib文件的使用1.基于UIViewController子类的xib的使用这种情况下使用很简单,对VC直接alloc,init就可以,VC会自动去找自己对应的xib文件,即使我们自定义了一些init方法,也不需要对加载他的xib做处理,系统会自动帮我们找是否有与其对应的xib文件,例如我们有这样一个初始化方法- (instancetype)initWithCustemData:(id)aData;我原创 2016-01-27 19:16:17 · 468 阅读 · 0 评论 -
iOS实现APP调用打电话,发短信,发邮件,打开Safari
打电话:- (IBAction)phone:(id)sender { [[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"tel://123456789"]];}打开Safari:- (IBAction)Safari:(id)sender { [[UIApplication sharedApplicat原创 2016-01-27 20:52:41 · 861 阅读 · 0 评论 -
iOS通过邮件获取APP异常崩溃信息
在AppDelegate.m文件中实现以下方法,程序在生产环境中,若发生崩溃,会提示用户发送邮件给开发者:- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { // Override point for customizati原创 2016-01-27 21:04:09 · 460 阅读 · 0 评论 -
iOS汉字字符串转拼音
有时候在开发中会遇到,需要通过拼音来进行排序,分类,但是服务器并没有返回带拼音的字符串,苹果为我们提供了对应的方法,来获取拼音 NSString *hanziText = @"我是中国人--重庆---长沙"; if ([hanziText length]) { NSMutableString *ms = [[NSMutableString alloc] initWith原创 2016-01-28 11:41:54 · 340 阅读 · 0 评论 -
xib中使用auto layout
iPhone5使屏幕从3.5”增大到了4.0”,与之对应的iOS6也就引入了auto layout,auto layout是一个很重要的概念,是独立于xib的,但是auto layout从一开始就是与xib强绑定的,因为在xib里设置auto layout是最简单的。我们这里默认大家对auto layout有基本的了解,网上有好多专门讲auto layout的教程,而且大多都是基于xib的,大家可以原创 2016-01-28 19:31:31 · 1003 阅读 · 0 评论 -
storyboard解析
如何理解SB?最简单的理解就是:一个.storyboard文件相当于多个基于VC使用的.xib文件,由此我们可以看出,SB(只能基于VC,不能基于View),我们有多个VC的类是可以和一个SB文件建立关系的,使用方法:SecVC *secVC = [[UIStoryboard storyboardWithName:@"Demo" bundle:[NSBundle mainBundle]] insta原创 2016-01-28 20:11:56 · 879 阅读 · 0 评论 -
storyboard解析2
添加tableHeaderView和tableFooterVie是的,没有听错,不用代码,“拖”出header于footer,其实很简单,选中tablView,在控件中找到View拖到tableView上,往最上方拖动,知道看到左右有两个圈的时候松手,这个View就是tableHeaderView了,同理,往最下方拖,就是tableFooterViewLaunchScreen.storyboard从原创 2016-01-28 20:29:59 · 459 阅读 · 0 评论 -
iOS获取设备UUID
在项目中写上以下代码,可以获取iOS设备的UUID UIDevice *device = [UIDevice currentDevice]; NSUUID *uuid = device.identifierForVendor; NSString *str = uuid.UUIDString; NSLog(@"UUIDString%@",str);原创 2016-01-29 18:54:39 · 399 阅读 · 0 评论 -
iOS应用跳转至app store 评分页
iOS7以后 iOS应用跳转到app store 评分的功能接口变了,网上资料大多都是iOS7以前的跳转方法,不过这个方法在iOS6和iOS7.1以后是可行的 [[UIApplicationsharedApplication]openURL:[NSURLURLWithString:@"http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewCont原创 2016-02-16 11:37:33 · 1293 阅读 · 0 评论 -
添加gitignore的方法
1.在github上下载gitignore项目,地址为https://www.github.com/github/gitignore 2.终端中cd进入到项目目录 3.在下载到的gitignore文件夹中找到对应的语言,然后终端中通过cp XXXX.gitignore .gitignore将gitignore拷贝到项目中 4.git add .命令将该文件添加到git管理 5.提交到git仓原创 2016-02-17 22:27:27 · 725 阅读 · 0 评论 -
0行代码实现 UIView 圆角属性设置
上一篇文章讨论了在 XIB中为 UIView设置圆角属性,今天发现了另外一种为 UIView 快速设置圆角属性的方法.1.首先创建一个 UIView的 Category,拥有以下属性,并在实现文件中重写每个属性的 setter 与 getter 方法//* 边线颜色 */@property (nonatomic, strong) UIColor *borderColor;//* 边线宽度 */原创 2016-08-06 16:43:49 · 633 阅读 · 0 评论