![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
其他开发
其他开发
长沙火山
2015年做个有梦想、肯努力的青年。
展开
-
iOS 过滤html标签
在项目的开发中,有时候需要加载一些html代码,html代码往往会带一些标签,但是我们不需要显示这些多余的标签,那么我们就要想办法把它给去掉。比如下面的一点html代码:1、 经认定的软件生产企业的工资和培训费用,可按实际发生额在计算应纳税所得额时扣除。2、 对我国境内新办软件生产企业经认定后,自开始获利年度起,第一年和第二年免征企业所得税,第三年至第五年减半征收企业所得税。我们细心的观察原创 2015-08-25 22:26:06 · 1978 阅读 · 1 评论 -
iOS 日期与字符串格式互转
前言1、解决日期转字符串格式; 2、解决字符串转日期格式; 3、解决时区差;代码如下:#import "ViewController.h"@interface ViewController ()@end@implementation ViewController- (void)viewDidLoad { [super viewDidLoad]; NSDate *nowDate =原创 2016-01-18 17:33:39 · 12269 阅读 · 1 评论 -
iOS 动态显示标签
解决问题1、根据标签长度显示; 2、多行显示标签;代码片段:- (void)viewDidLoad { [super viewDidLoad]; NSArray *arr = @[@"JAVA",@"C",@"C++",@"PHP",@"Object-C",@"Swift",@"JAVAWEB",@"C#",@"MYSQL"]; NSInteger x = 10; N原创 2016-02-14 18:11:21 · 1719 阅读 · 1 评论 -
iOS 设置label的边距
- (void)drawTextInRect:(CGRect)rect { UIEdgeInsets insets = {10, 20, 0, 20}; [super drawTextInRect:UIEdgeInsetsInsetRect(rect, insets)];}原创 2016-02-15 14:11:49 · 2942 阅读 · 0 评论 -
iOS 设置头像圆角效果
前言在项目中,经常需要用到设置头像的圆角效果。设置圆角效果其实很简单,有两种方法,一种方法是通过设置view的圆角来实现,另一种是给view添加遮罩层。方法一:设置圆角 UIImageView *imgHeader = [[UIImageView alloc] initWithFrame:CGRectMake(100, 50, 100, 100)]; imgHeader.image = [U原创 2016-02-16 17:40:39 · 1118 阅读 · 1 评论 -
iOS 数组排序
1、字母排序 NSArray *arrData = @[@"i",@"b",@"a",@"d",@"e",@"f",@"g",@"h",@"c"]; NSArray *sortArray = [arrData sortedArrayUsingSelector:@selector(compare:)]; NSLog(@"%@",sortArray);输出结果:2、数字排序 NSArra原创 2016-03-04 13:44:54 · 665 阅读 · 0 评论 -
iOS view被导航条遮挡
添加了一个导航条之后,view被导航条给覆盖了,并没有从导航条的下面开始。在iOS 7中,UIViewController引入了一个新的属性:edgesForExtendedLayout。 这个属性的默认值是UIRectEdgeAll。当你的容器是UINavigationController的时候,默认的布局就是从状态栏的顶部开始的。这就是为什么你设置的控件都往上漂移的原因。有两种方法解决这个问题:原创 2016-04-14 10:34:48 · 8171 阅读 · 1 评论 -
Andriod Checkbox
1、在xml添加布局代码:原创 2016-05-11 22:18:19 · 497 阅读 · 0 评论 -
Mac 修改host
1、打开命令终端,输入下面的命令,进入hosts文件:sudo vim /etc/hosts输入你的密码之后,会出现如下界面:按下键盘的 i 字母键,进入编辑模式,然后将光标移到最末端,另起一行可以新添加一个,如下图:添加完毕之后,按下键盘的 Esc 键,退出编辑模式,然后输入 :wq ,保存并退出。如下图:然后,按下Enter键盘,就添加成功了。2、查看host 输入命令行: more /etc/原创 2016-06-02 09:45:24 · 3031 阅读 · 1 评论 -
iOS UIAlterController
UIAlertController *alterController = [UIAlertController alertControllerWithTitle:@"预订提醒" message:title原创 2016-06-14 10:29:29 · 2110 阅读 · 1 评论 -
iOS 获取通讯录的数据
//访问通讯录- (void)visitAddressBook{ CNContactStore *contactStore = [[CNContactStore alloc] init]; if ([CNContactStore authorizationStatusForEntityType:CNEntityTypeContacts] == CNAuthorizationStat原创 2016-06-23 09:13:55 · 1209 阅读 · 1 评论 -
iOS 修改状态栏的颜色
1、打开Info.plist文件修改View controller-based status bar appearance 的值为NO,如下图:2、在AppDelegate.m中添加代码: //[UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleDefault; //默认是黑色 [UIApplicati原创 2016-06-23 10:18:39 · 619 阅读 · 0 评论 -
iOS 自定义nav tab 样式
//状态栏颜色 [[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent]; // 定义NavigationBar样式 [[UINavigationBar appearance] setTitleTextAttributes:@{NSFontAtt原创 2016-08-30 13:45:51 · 1005 阅读 · 0 评论 -
iOS 全息备份研究
一、获取手机中app列表1、获取iPhone中所有安装的APP获取iPhone手机中安装的所有App苹果没有提供直接的方法,但是可以通过苹果私有的api获取到。代码如下:Class LSApplicationWorkspace_class = objc_getClass("LSApplicationWorkspace");NSObject *workspace = [LSApplicationWor原创 2016-08-11 11:00:56 · 4097 阅读 · 1 评论 -
iOS 数据存储:Plist
前言plist文件是iOS数据存储方法的一种,主要用于保存少量的数据在本地。其本质就是文件的读写,获取一个plist的文件路径,以键值对的方式把数据写到plist文件中。plist文件一般会保存在沙盒中,当该应用被删除时,plist文件也会被一同删除。#import @interface LoadViewController : UIViewController@pro原创 2016-08-15 12:33:42 · 717 阅读 · 1 评论 -
iOS 添加iTunes Connect 开发人员
APP上架的时候,开发人员每次提交一个版本,苹果都会给公司邮箱发送一封邮件,但是作为开发者有可能不能第一时间收到这份邮件,因为注册苹果开发者账号的时候,是填写的公司邮箱而非开发者的个人邮箱。开发者可以在iTunes Connect中将自己添加为开发人员,这样每次苹果也会给你发一份提交版本的反馈信息。1、登陆 iOS Developer, 连接到iTunes Connect2、选择用户和职能3、添加开原创 2016-10-10 09:21:17 · 4446 阅读 · 1 评论 -
iOS Xcode中Version和Build的区别
在Xcode ->General ->Identity中有一个Version和Build,感觉这两个都是版本号,有点傻傻分不清。Version(应用程序发布版本号)对应的就是CFBundleShortVersionString。该版本的版本号是三个时期分隔的整数组成的字符串: 第一个整数代表重大修改的版本,如实现新的功能或重大变化的修订。 第二个整数表示的修订,实现较突出的特点。 第三个整数代原创 2016-10-10 10:11:19 · 4270 阅读 · 1 评论 -
iOS ScrollView下拉留白处理
1、禁止列表下拉 _scrollView = [[UIScrollView alloc] initWithFrame:self.view.bounds]; _scrollView.contentSize = CGSizeMake(SCREEN_WIDTH, 800); _scrollView.showsVerticalScrollIndicator = NO; _scr原创 2016-11-03 14:17:34 · 2183 阅读 · 1 评论 -
iOS AttributedString 富文本
前言AttributedString可以分为NSAttributedString和NSMutableAttributedString两种。在使用中通过将AttributedString赋值给控件的 attributedText 属性来添加文字样式。UILabel、UITextField和UITextView,都可以使用该属性。1、设置常规属性 NSString *str = @"大海因为有了波澜所以原创 2016-11-08 10:48:06 · 536 阅读 · 1 评论 -
iOS 图片模糊效果
iOS 8.0之后,系统提供了自带的模糊效果: UIImageView *imageview = [[UIImageView alloc] init]; imageview.frame = CGRectMake(10, 100, self.view.frame.size.width-20, 400); imageview.image = [UIImage imageNamed:@"原创 2016-10-31 09:34:18 · 366 阅读 · 1 评论 -
iOS 报错:cannot create weak reference in file using
1、引入了其他的第三方SDK后,项目就报错了,如下图:2、解决办法:点击工程启动文件 - TARGETS -Build Settings - 在下方搜索框搜索weak - 在Apple LLVM 8.0 - Language - Objective C选项下边 - 把Weak Reference in Manual Retain Release选项改成YES即可。原创 2016-11-01 14:53:16 · 7199 阅读 · 1 评论 -
忽略git 上传的文件
1、进入工程的根目录;2、输入: git config core.excludesfile ~/.gitignore_global3、添加:# Mac OS X*.DS_Store# Xcode*.pbxuser*.mode1v3*.mode2v3*.perspectivev3*.xcuserstateproject.xcworkspace/xcuserdata/#Git.giti原创 2016-11-24 09:16:58 · 358 阅读 · 1 评论 -
iOS 修改状态栏的颜色
1、在plist文件中设置2、添加代码 [[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent animated:YES];原创 2017-02-06 14:06:15 · 523 阅读 · 0 评论 -
iOS 提交AppStore不出现构建的版本
近日往AppStore上跟新一个版本,提交了好几次,每次都提交成功了,但是在iTunes Contacts上一直没有看到可选的构建版本,也没看到有邮件的反馈,纳闷了好久都不知道是什么鬼原因,后面发现是iOS 10以后,苹果增强了对用户隐私的保护,访问照相机、相册、麦克风、定位、通讯录等,都需要在info.plist 文件中添加权限,而且少一个都不行。根据需要添加,项目中使用了什么,就添加对应的权限。原创 2016-10-10 11:27:54 · 12261 阅读 · 1 评论 -
iOS 字符操作
1、从某个字符串中取某个字符:NSString *baseStr = @"0123456789abcdefghijklmnopqrstuvwxyz";NSInteger num = [self getRandomNumber:0 to:baseStr.length];unichar bChar = [baseStr characterAtIndex:num];NSLog(@"%C", bC原创 2017-07-04 12:21:42 · 319 阅读 · 0 评论 -
iOS Xcode报错:cannot find code object on disk
Xcode报错信息:cannot find code object on disk具体如下:解决办法:打开Xocde ,进入到 Target -> Build-Phases -> RunScript, 勾选Run script only when installing, 如下图所示:原创 2017-07-14 11:38:13 · 955 阅读 · 0 评论 -
iOS 文件拷贝
- (void)saveFile:(NSString *)folderPath{ NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); NSString *documentsDirectory = [paths objectAtIndex:0原创 2017-07-19 10:31:37 · 2848 阅读 · 1 评论 -
iOS开发 PHAsset获取照片名称
用PHAsset获取照片名称目前网上有三种方法。第一种: [[PHImageManager defaultManager] requestImageForAsset:asset targetSize:size contentMode:PHImageContentModeDefault options:options resultHandler:^(UIImage * _Nullable result原创 2017-08-30 10:16:52 · 14276 阅读 · 0 评论 -
ios正则表达式:汉字+字符+数字+常用符号
//过滤特殊字符+(BOOL)validateRemark:(NSString*)sText{ NSString*remarkRegex =@"[0-9a-zA-Z\u4e00-\u9fa5\\.\\*\\)\\(\\+\\$\\[\\?\\\\\\^\\{\\|\\]\\}%%%@\'\",。‘、-【】·!_——=:;;《》‘’“”!#~]+"; NSPredicate*pas原创 2017-11-07 20:36:55 · 2081 阅读 · 1 评论 -
iOS Mob短信验证SDK包含IDFA,导致提交AppStore失败
1、项目中使用了Mob的短信验证码功能,打包成ipa的包上传到AppStore的时候报错了,错误提示如下图所示:2、找出哪里使用了IDFA首先cd到你的工程目录下,然后执行命令:grep -r advertisingIdentifier .然后就可以找到是哪里使用了IDFA,如下图所示,是我的项目中Mob 短信验证码的SDK使用了IDFA。3、解决办法只要勾选这个就可以了原创 2017-11-01 10:13:22 · 597 阅读 · 0 评论 -
iOS播放gif动画
//webView播放动画- (void)webViewPlayAnimation{ NSString *path = @"http://7xk1w3.com1.z0.glb.clouddn.com/animation1.gif"; webView = [[UIWebView alloc]initWithFrame:CGRectMake(0, 0, 190, 240)]; ...原创 2018-06-01 16:03:43 · 1345 阅读 · 1 评论 -
iOS 检查代码执行的时间
- (void)enumerArray1{ double lastTime = CFAbsoluteTimeGetCurrent(); for (NSInteger i=0; i<self.arrData.count; i++) { NSLog(@"%@:",self.arrData[i]); } double curT...原创 2019-04-25 21:10:40 · 703 阅读 · 1 评论 -
iOS开发 ipa包瘦身原理
现在开发一个项目,基本上都需要添加一些第三方库或SDK,比如环信、支付宝、微信之类的,到了打包测试的时候打出来的ipa包往往都是100多兆。其实项目里面的功能感觉不多,为什么大出来的包会这么大呢?我们有必要一起来学习一下指令集。iOS中的指令集主要有这几种:i386,x86_64,armv7, armv7s, arm64。模拟器32位处理器测试需要i386架构,模拟器64位处理器测试...原创 2019-08-01 17:10:13 · 810 阅读 · 1 评论 -
SVN下Xcode中文件状态的含义
1、代码中 某文件后面有 “M” 标记,表示该文件已被修改,需要 commit. (右键该文件 -> source control -> commit selected file…) 2、代码中 某文件后面有 “A” 标记,表示该文件是新添加的,已受SVN管理,需要 commit. (右键该文件 -> source control -> commit select原创 2015-10-13 10:46:53 · 694 阅读 · 1 评论 -
iOS Project和target
1、从XCode左侧的列表中, 我们可以看到一个Target包含了Copy Bundle Resources, Compile Sources, Link Binary With Libraries. 其中Copy Bundle Resources 是指生成的product的.app内将包含哪些资源文件Compile Sources 是指将有哪些源代码被编译Link Binary With Libr原创 2015-11-10 18:00:08 · 600 阅读 · 1 评论 -
iOS 修改类名
在做iOS开发代码优化的工作时,优化代码结构之前,我们应该先整理好工程的外貌,将文件和类的命名进行规范,在Xcode中为我们提供了方便而强大的名称修改功能。第一步:修改类名将鼠标点击放在类的名称上,选择Xcode工具栏中的edit->refactor->rename:之后,将类名更改为我们需要的模式点击preview,记得将下面的关联文件勾选:原创 2015-10-23 12:18:13 · 2196 阅读 · 0 评论 -
1、IOS编译报之:streamStatus only defined for abstract class
今天发现了AFNetwroking的一个bug, 一年之前做的一个项目好好的,一年之后再次跑起来发现某个模块的提交功能莫名奇妙的崩溃了。程序员第一直觉就是检查代码,看了几遍代码确实没错,这就TMD郁闷了,啥原因呢???经过一番折腾,发现其实是 AFNetworking 这个框架中的一个 bug 导致的。以前老版本的 AFNetworking 在IOS7的系统上没问题,但是升级到IOS8之后,就出问原创 2015-03-21 15:24:56 · 1302 阅读 · 1 评论 -
iOS [[UIScreen mainScreen] scale]是什么?
咋一看,我还以为[[UIScreen mainScrenn] scale]应该是缩放比例勒,结果深入理解了一下,并不是。这句代码的作用是判断屏幕的分辨率的。什么是分辨率?不然我们先来看一张图。 其实,[[UIScreen mainScreen] scale]是计算屏幕分辨率的喔。[[UIScreen main] scale] == 1; //代表320 x 480 的分辨率[[UIScreen原创 2015-09-24 10:16:56 · 9013 阅读 · 1 评论 -
第一课 OC最常用的数据类型
常用数据类型1、整型 NSInteger 2、字符型 NSString 3、浮点型 float- (void)viewDidLoad { [super viewDidLoad]; //定义一个整型的变量 NSInteger a = 100; //定义一个字符串 NSString *b = @"100"; //定义一个浮点型的变量 float原创 2015-09-09 15:44:11 · 476 阅读 · 0 评论 -
第二课 循环语句
在OC语言中,有两种常用的循环语句:for语句、while语句。分别介绍如下:for 语句 for为当型循环语句,它很好地体现了正确表达循环结构应注意的三个问题: 1、控制变量的初始化。 2、循环的条件。 3、循环控制变量的更新。for表达式表达式1:一般为赋值表达式,给控制变量赋初值; 表达式2:关系表达式或逻辑表达式,循环控制条件; 表达式3:一般为赋值表达式,原创 2015-09-09 16:00:18 · 546 阅读 · 0 评论