
项目优化
timtian008
让更多的程序员多一份管道收入
展开
-
IOS 13 新特性适配 Dark Mode
iOS 13 支持适配的机型iPhone X、iPhone XR、iPhone XS、iPhone XS MaxiPhone 8、iPhone 8 PlusiPhone 7、iPhone 7 PlusiPhone 6s、iPhone 6s PlusiPhone SEiPod touch (第七代)新特性适配 Dark ModeiOS 13 推出暗黑模式,UIKit 提供新的系统颜色...原创 2019-11-14 15:41:45 · 1242 阅读 · 0 评论 -
为何要支持IPV6
IPv6和IPv4有什么区别 IPV6和IPV4协议早已为人所共知。IPv4,是互联网协议(Internet Protocol,IP)的第四版,也是第一个被广泛使用,构成现今互联网技术的基石的协议。它的下一个版本就是IPv6。IPv6正处在不断发展和完善的过程中,它在不久的将来将取代目前被广泛使用的IPv4。 IPv4中规定IP地址长度为32(按TCP/IP参考模型划分) ,即有2^32-1原创 2017-04-10 15:07:03 · 3313 阅读 · 0 评论 -
'Project Name' was compiled with optimization - stepping may behave oddly
今天调试发现log无法打印出来,并提示这样的错误 ‘Project Name’ was compiled with optimization - stepping may behave oddly; variables may not be available倒腾半天后发现前期编译的时候选择的是 release,而 release 的时候是会做很多优化,导致上述结果。其实把编译方式改为D原创 2017-02-13 15:04:19 · 2927 阅读 · 0 评论 -
Swift3.0 中的仿oc中的宏定义文件
Swift中取消了#Define这种宏定义了,但可以用let来声明常量来取代 首先创建一个common.swift 文件来存放你所定义的宏定义内容//当前系统版本let kVersion = (UIDevice.current.systemVersion as NSString).floatValue// 屏幕宽度let kScreenW = UIScreen.main.bound原创 2016-12-21 15:00:38 · 4445 阅读 · 0 评论 -
设置tableViewCell分割线上下去边线,中间缩进
无需自定义代码设置tableViewCell分割线上下去边线,中间缩进 //设置分割线上下去边线,顶头缩进15-(void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath{ UIEdgeInsets原创 2016-12-15 15:40:55 · 2539 阅读 · 0 评论 -
修改系统UISearchBar搜索框的样式-搜索图片、背景颜色
修改系统搜索框 //searchbar //设置背景图是为了去掉上下黑线 self.searchBar.backgroundImage = [[UIImage alloc] init]; // 设置SearchBar的颜色主题为白色 self.searchBar.barTintColor = [UIColor whiteColor]; self.searchB原创 2016-12-15 14:21:53 · 6364 阅读 · 0 评论 -
IOS手机号、 邮箱、 电话、 数字、 身份证、 银行卡 正则判断
//昵称(账号)+ (BOOL) validateNickname:(NSString *)nickname{// NSString *nicknameRegex = @"^[\u4e00-\u9fa5A-Za-z0-9]{4,16}$"; NSString *nicknameRegex = @"^[a-zA-Z0-9]{3,16}$"; NSPredicate *pass转载 2016-12-07 15:36:35 · 1466 阅读 · 0 评论 -
IOS 根据屏幕高度设置tableview中图片元素的大小
尝试该方法无法实现:cell.bankbgImageView.contentMode = UIViewContentModeCenter; cell.bankbgImageView.frame = CGRectMake(0, 0, 50, 50); 直接在tableview中修改cell 元素的大小是无法实现的,只有通过下面的做法调整:- (UITableViewCell *)tableVie原创 2016-11-18 14:28:41 · 1309 阅读 · 0 评论 -
iOS UIFont 字体名称大全,图解及使用方法
如何在项目中使用方法:numlable.font=[UIFont fontWithName:@"AmericanTypewriter" size:14.0];//设置字体样式如何获取字体名称:NSArray *familyNames = [UIFont familyNames]; for( NSString *familyName in familyNames ){原创 2016-11-15 10:19:02 · 7365 阅读 · 0 评论 -
ios中常用小技巧注意点
1.设置图片原图显示 UIImage*image=[UIImage imageNamed:@"place_map.png"];UIImage*original=[image imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal]; self.navigationItem.rightBarButtonItem=[[UIBarBut原创 2016-10-12 11:46:56 · 404 阅读 · 0 评论 -
OS开发----常用函数和常数
算术函数【算术函数】函数名说明int rand()随机数生成。(例)srand(time(nil)); //随机数初期化int val = rand()P; //0~49之间的随机数int abs(int a)整数的绝对值(例)int val = abs(-8); →8※浮点转载 2016-10-08 15:11:33 · 416 阅读 · 0 评论 -
IOS--通过代码方式使用AutoLayout (NSLayoutConstraint + Masonry)
随着iPhone6/6+设备的上市,如何让手头上的APP适配多种机型多种屏幕尺寸变得尤为迫切和必要。(包括:iPhone4/4s,iPhone5/5s,iPhone6/6s,iPhone 6p/6ps,iPhone7,iPhone 7p)。在iPhone6出现以前,我们接触的iPhone屏幕只有两种尺寸:320 x 480和320 x 568。所以在那个时候使用传统的绝对定位(Frame)方式进行界转载 2016-09-28 18:06:39 · 1839 阅读 · 0 评论 -
TTNavigationBar-alpha 导航栏隐藏渐变
欢迎大家到github下载 https://github.com/TimTian008/TTNavigationBar-alpha TTNavigationBar-alpha滑动tableview 导航栏渐变,导航栏文字上移 本文所引用的布局类cocopods进行安装pod ‘Masonry’按照顺序添加视图#pragma mark-- 生命周期- (void)viewDidLoad {原创 2016-09-21 15:05:49 · 1068 阅读 · 1 评论 -
tableView 局部刷新
//局部section刷新 NSIndexSet * indexSection=[[NSIndexSet alloc]initWithIndex:1]; //刷新第二个section[tableView reloadSections:indexSection withRowAnimation:UITableViewRowAnimationAutomatic];//局部cell刷新 NSIndex原创 2016-08-17 16:59:10 · 1280 阅读 · 0 评论 -
cycleBtn 创建--UIButtonTypeRoundedRect
开发个性化镂空带边框Button //cycleBtn 创建 UIButton* cycleBtn=[UIButton buttonWithType:UIButtonTypeRoundedRect]; cycleBtn.frame=CGRectMake(0, 0, 60, 30); [cycleBtn setTintColor:[UIColor colorWithRed:0.97原创 2016-07-14 20:07:16 · 457 阅读 · 0 评论 -
iOS获取通知状态并跳转设置界面设置
1、获取用户通知中心对程序消息通知的设置,是否开启消息通知if ([[UIDevice currentDevice].systemVersion floatValue]>=8.0f) { UIUserNotificationSettings *setting = [[UIApplication sharedApplication] currentUserNotificationSet原创 2016-07-12 11:27:20 · 10509 阅读 · 0 评论 -
IOS用CGContextRef画各种图形(文字、圆、直线、弧线、矩形、扇形、椭圆、三角形、圆角矩形、贝塞尔曲线、图片)
首先了解一下CGContextRef: An opaque type that represents a Quartz 2D drawing environment. Graphics Context是图形上下文,可以将其理解为一块画布,我们可以在上面进行绘画操作,绘制完成后,将画布放到我们的view中显示即可,view看作是一个画框. 自己学习时实现的demo,希望对大家有帮助,具体的实现看转载 2016-07-11 14:39:32 · 382 阅读 · 0 评论 -
在UIView中添加点击事件oc及swift
UIView继承于UIResponder是没有addTarget 方法的,所有只能在UIView上添加手势UITapGestureRecognizer来实现点击事件。 首先设定UIView(或其子类)为可交互的:iconView.userInteractionEnabled = YES;添加tap手势: //tap手势 UITapGestureRecognizer *tapGesture=[[原创 2016-07-08 08:08:08 · 10617 阅读 · 0 评论 -
设置启动界面ios 8设置状态栏字体颜色
状态栏的字体为黑色:UIStatusBarStyleDefault状态栏的字体为白色:UIStatusBarStyleLightContent一、在info.plist中,将View controller-based status bar appearance设为NO状态栏字体的颜色只由下面的属性设定,默认为白色:// default is UIStatusBarStyleDefault[UIApp原创 2016-07-07 14:43:24 · 858 阅读 · 0 评论 -
IOS编码规范
1、每个.h文件最开始处用简短文字说明一下该类的功能逻辑。 2、声明类或方法时,注意空格的使用,参数过多时可换行保持对齐 调用方法时也是如此,参数都写在一行或换行冒号对齐 3、命名规则 (1)类名首字母大写,方法首字母小写,方法中的参数首字母小写,同时尽量让方法的命名读起来像一句话,能够传达出方法的意思,同时取值方法前不要加前缀“get” (void)replac原创 2016-06-29 11:21:50 · 426 阅读 · 0 评论 -
IOS文档结构管理
一、 文档结构管理1、建立Lib文件夹,所有第三方库放入其中。 2、建立Utils文件夹,自已封装的类放入其中。 3、建立Public.h头文件,所有的常量定义于其中。Public.h文件放入.Pch里面。 4、MVC三个模块分开,并将每个功能块放入一个Group,在目录里建立实际文件夹管理。 5、程序资源文件放入Supporting Files文件夹中。如.plist、数据库资料等。原创 2016-06-29 11:12:59 · 383 阅读 · 0 评论 -
设置NavigationBar 右侧按钮 rightBarButtonItem
通常情况我们会自定义navigationbar左右按钮来满足我们也业务需求, 右侧添加一个按钮 UIBarButtonItem *addFriendBtn = [[UIBarButtonItem alloc] initWithTitle:@”加好友” style:UIBarButtonItemStyleBordered target:self action:@selector(ad原创 2016-06-24 14:39:20 · 3380 阅读 · 0 评论 -
cocopods【 审核报错】提交构建版本出错:ERROR ITMS-90635
昨天提交审核时出现了这样的错误 晚上有些不负责任的博主没有验证就将答案贴上, 结果就是报出语法错误 正确的方法是platform:ios, ‘7.0’ use_frameworks! target "your app name" do pod 'Reachability', '3.1.0' pod 'AFNetworking', '~> 3.0.4s’pod 'SDWebImag原创 2016-06-21 09:35:46 · 1397 阅读 · 2 评论 -
主题 : clang: error: linker command failed with exit code 1 (use -v to see invocation)
ld: warning: relocatable dylibs (e.g. embedded frameworks) are only supported on iOS 8.0 and later (@rpath/libswift_stdlib_core.dylib)报错原因:libswift_stdlib_core.dylib的framework支持的最低开发环境为8.0,而使用该framewor原创 2016-05-18 14:53:57 · 501 阅读 · 0 评论 -
CocoaPods报错:The dependency `AFNetworking (~> 3.0.4s)` is not used in any concrete target
1、 最近电脑重装了一下系统。今天准备在pod 中在加一个三方包,结果发现之前的一些文件也不能用了,于是就各种查资料查找解决方案,最后总结如下: 于是将原来的: platform :ios pod ‘Reachability’, ‘3.1.0’ platform:ios, ‘7.0’ pod ‘AFNetworking’, ‘~> 3.0.4s’ pod ‘SDWeb原创 2016-05-18 11:02:41 · 791 阅读 · 0 评论 -
UITableView中Cell重用机制导致内容重复解决方法
UITableView继承自UIScrollview,是苹果为我们封装好的一个基于scroll的控件。上面主要是一个个的UITableViewCell,可以让UITableViewCell响应一些点击事件,也可以在UITableViewCell中加入UITextField或者UITextView等子视图,使得可以在cell上进行文字编辑。UITableView中的cell可以有很多,一转载 2016-03-28 19:23:48 · 2749 阅读 · 0 评论 -
关于最新手机号码验证的正则表达式(oc及swift)
由于三大运营商已经增加了新的手机号码字段,为了能够正确验证手机号码的正确性,我们必须将正则表达式更新后放入项目中。 OC:- (BOOL)isMobileNumber:(NSString *)mobileNum{ if (mobileNum.length != 11) { return NO; } /** * 手机号码: * 1原创 2016-03-22 23:29:24 · 5911 阅读 · 1 评论 -
Xcode编译: pngcrush caught libpng error解决方法
模拟器下没有任何错误,但是在真机调试时,出现如下提示错误 原因: png并识别的png,而是手动修改jpg后缀名为png,在模拟器上不会报错,但在真机,不识别这种所谓的“png”图片。 解决方法有两种: 1、重新把图片文件导出成.png文件 2、保持原有文件名后缀,比如改成.jpg原创 2016-03-22 14:12:17 · 2029 阅读 · 0 评论 -
iOS 中三种定时器的用法NSTimer、CADisplayLink、GCD
一、NSTimer创建方法 NSTimer *timer = [NSTimer scheduledTimerWithTimeInterval:1.0 target:self selector:@selector(action:) userInfo:nil repeats:NO]; TimerInterval : 执行之前等待的时间。比如设置成1.0,就代表1秒后执行方法 target : 需转载 2016-03-19 11:36:17 · 519 阅读 · 0 评论 -
_weak typeof(self) weakSelf = self 作用及用法
_weak typeof(self) weakSelf = self; (一)内存管理原则 1、默认strong,可选weak。strong下不管成员变量还是property,每次使用指针指向一个对象,等于自动调用retain(), 并对旧对象调用release(),所以设为nil等于release。 2、只要某个对象被任一strong指针指向,那么它将不会被销毁,否则立即释放,不用等r转载 2016-03-07 10:48:58 · 2067 阅读 · 0 评论 -
工程中使用 JSONkit 出现'isa' is deprecated错误的解决办法
今天新开了个Cocoapod工程中使用 JSONkit 出现’isa’ is deprecated错误。 错误信息如下 解决方案如下 点击Pod工程->build settings-> Direct usage of ‘isa’ 将 YES 改为NO 就可以解决这个问题原创 2016-03-02 11:48:22 · 2069 阅读 · 0 评论 -
IOS开发-CocoaPods安装和使用教程及常见错误
CocoaPods是iOS最常用的第三方类库管理工具,绝大部分有名的开源类库都支持CocoaPods。所以,作为iOS程序员,掌握CocoaPods的使用是必备技能。 下面我们就来讲一下CocoaPods的安装流程。 第一步:安装cocoapods sudo gem install cocoapods>ERROR: Could not find a valid gem 'cocoapod原创 2016-03-01 15:57:48 · 1521 阅读 · 0 评论