ios开发
TY_IOS
这个作者很懒,什么都没留下…
展开
-
[self.tableView reloadData] 刷新数据的时候视图会闪一下
解决办法: self.tableView.estimatedRowHeight = 0; self.tableView.estimatedSectionFooterHeight = 0; self.tableView.estimatedSectionHeaderHeight = 0;答案来自这里: http://wetest.qq.com/lab/view/326.html?...转载 2018-04-13 11:46:15 · 3183 阅读 · 0 评论 -
ios 图片保存到系统相册
- (void)saveImageToAlbum{ UIImageWriteToSavedPhotosAlbum(self.filterView.image, self, @selector(imageSavedToPhotosAlbum:didFinishSavingWithError:contextInfo:), nil);}- (void)imageSavedToPhotosA原创 2016-10-08 15:31:42 · 722 阅读 · 0 评论 -
ios 应用内跳转微信
平常我们做iOS开发,会经常遇到打开其他的APP的功能。本篇文章讲的就是打开别人的APP的一些知识。我们的目标是:打开别人的APP让别人打开我们的APPiOS9的适配问题使用URL Schemes传递数据然后两句代码直接搞定: //创建一个url,这个url就是WXApp的url,记得加上:// NSURL *url = [NSURL URLWithS原创 2016-09-06 10:23:55 · 15568 阅读 · 0 评论 -
ios 判断用户是否开启定位权限并跳转设置
//请开启定位服务 CLAuthorizationStatus status = [CLLocationManager authorizationStatus]; if (kCLAuthorizationStatusDenied == status || kCLAuthorizationStatusRestricted == status) { //读取本地原创 2016-10-24 10:44:34 · 13380 阅读 · 0 评论 -
让你的 Xcode8 继续使用插件
随着 iOS10 的正式版即将发布,Xcode8 GM 也在发布会后放出,本文不会涉及到 Xcode8 有哪些更新,而是记录了如何让 Xcode8 继续支持 Plugin。Update:9.16看到 GitHub 上有一个 repo 可以一句命令即可解决本文提到的所有问题 update_xcode_plugins,没有亲测,如果觉得本文方法比较麻烦,可以一试。我个人转载 2016-09-19 09:20:41 · 2500 阅读 · 2 评论 -
iOS GitHub上常用第三方框架
转载自:https://github.com/Tim9Liu9/TimLiu-iOS目录UI下拉刷新模糊效果AutoLayout富文本图表表相关与Tabbar 隐藏与显示HUD与Toast对话框其他UI动画侧滑与右滑返回手势gif动画其他动画网络相关网络连接图像获取网络聊天网络测试网页框架WebView与WKWebViewMode转载 2016-09-20 13:54:01 · 9597 阅读 · 0 评论 -
UIAlertController样式集合
1.默认样式UIAlertController *alertController = [UIAlertController alertControllerWithTitle:@"你好" message:@"这个是UIAlertController的默认样式" preferredStyle:UIAlertControllerStyleAlert]; UIAlertAction *ca原创 2016-10-09 10:56:37 · 1085 阅读 · 0 评论 -
Xcode8 兼容iOS 10 整理笔记
1.Notification(通知)自从Notification被引入之后,苹果就不断的更新优化,但这些更新优化只是小打小闹,直至现在iOS 10开始真正的进行大改重构,这让开发者也体会到UserNotifications的易用,功能也变得非常强大。iOS 9 以前的通知1.在调用方法时,有些方法让人很难区分,容易写错方法,这让开发者有时候很苦恼。2.应用在运行时和非运行时转载 2016-09-18 15:03:55 · 1191 阅读 · 0 评论 -
iOS去除导航栏和tabbar的1px横线
1.在自己定义的导航栏中或者设计稿中经常需要去除导航栏的1px横线,主要是颜色太不协调了去除之前的图片要去除这1px的横线,首先应该知道它是什么,在Xcode的界面调试中可以看到,它其实是UIImageView来的找到横线是什么了···其实这是navigationBar的shadowImage,所以只要设置它为空即可,但是设置它为空之前应该先原创 2016-09-19 12:00:49 · 690 阅读 · 0 评论 -
iOS 枚举的巧用
1.使用层面的理解在这里首先讲如何简单的使用, 仅仅是使用层面(有理解错误的地方帮忙纠正), 然后我们在去理解位运算符! 在下面的图中我们可以看见枚举值中有(位运算符:左移):如果我们在枚举值中看见那我们就可以通过|(位运算符:或)进行组合使用如下代码为例: //随便添加一个UITextField UITextField *field = [UITextField new转载 2016-09-18 15:06:23 · 567 阅读 · 0 评论 -
ios中修改自定义PickerView的字体颜色
- (UIView *)pickerView:(UIPickerView *)pickerView viewForRow:(NSInteger)row forComponent:(NSInteger)component reusingView:(UIView *)view{ UILabel* pickerLabel = (UILabel*)view; if (!pickerLabe原创 2016-11-19 16:31:20 · 3484 阅读 · 0 评论 -
ios 隐藏cell分割线和自定义cell分割线颜色
tableView.separatorStyle = UITableViewCellSelectionStyleNone;原创 2016-09-28 09:32:39 · 1460 阅读 · 0 评论 -
UIRefreshControl 使用
self.tableView = [[UITableView alloc] initWithFrame:self.view.bounds style:UITableViewStyleGrouped]; self.tableView.delegate = self; self.tableView.dataSource = self; self.tableView.separa...原创 2018-04-12 11:30:42 · 550 阅读 · 0 评论 -
ios 模糊搜索支持首字母搜索、拼音搜索、汉字搜索
/** * 汉字转拼音 * * @param aString: 需要转的字符 */+ (NSString *)transformToPinyin:(NSString *)aString { //转成了可变字符串 NSMutableString * mutableString = [NSMutableString stringWithString:aString]; ...原创 2018-04-04 11:05:44 · 1916 阅读 · 0 评论 -
iOS Button 上文字图片位置的设置
创建一个 UIButton UIButton * button = [UIButton buttonWithType:UIButtonTypeCustom]; button.backgroundColor = [UIColor grayColor]; [button setImage:[UIImage imageNamed:IMAGE] forState:UIControlSt原创 2017-09-21 11:13:43 · 5291 阅读 · 1 评论 -
浅谈iOS开发中方法延迟执行的几种方式
原文地址:http://www.jianshu.com/p/6ed28a29b391Method1. performSelector方法Method2. NSTimer定时器Method3. NSThread线程的sleepMethod4. GCD公用延迟执行方法- (void)delayMethod{ NSLog(@"delayMethodEn转载 2017-03-23 17:10:03 · 457 阅读 · 0 评论 -
ios隐藏和显示TabBar的方法
////显示- (void)showTabBar{ if (self.tabBarController.tabBar.hidden == NO) { return; } UIView *contentView; if ([[self.tabBarController.view.subviews objectAtIndex:0] isKi原创 2016-12-07 13:14:45 · 1897 阅读 · 0 评论 -
iOS 设置导航栏全透明
- (void)viewWillAppear:(BOOL)animated{ //设置导航栏背景图片为一个空的image,这样就透明了 [self.navigationController.navigationBar setBackgroundImage:[[UIImage alloc] init] forBarMetrics:UIBarMetricsDefault];原创 2017-02-10 11:12:12 · 11410 阅读 · 0 评论 -
获取屏幕上展示的UITableViewCell
NSArray *visiblePaths = [_tabelView indexPathsForVisibleRows]; for (NSIndexPath *indexPath in visiblePaths) { //获取到的indexpath为屏幕上的cell的indexpath }原创 2017-02-09 16:30:52 · 3049 阅读 · 0 评论 -
tableView刷新指定的cell 或section和滚动到指定的位置
//一个section刷新 NSIndexSet *indexSet=[[NSIndexSet alloc]initWithIndex:2]; [tableview reloadSections:indexSet withRowAnimation:UITableViewRowAnimationAutomatic]; //一个cell刷新 NSIndexPath原创 2017-01-14 14:11:10 · 15273 阅读 · 0 评论 -
ios 计算文字高度
-(float)sizeContentHeight:(NSString *)content{ CGSize size = CGSizeMake(self.view.bounds.size.width-78, NSIntegerMax); NSDictionary *dict = @{NSFontAttributeName: [UIFont systemFontOfSize:14]原创 2016-06-27 13:47:28 · 397 阅读 · 0 评论 -
iOS上如何让按钮文本左对齐问题
这里使用button.titleLabel.textAlignment = NSTextAlignmentLeft; 这行代码是没有效果的,这只是让标签中的文本左对齐,但并没有改变标签在按钮中的对齐方式。所以,我们首先要使用button.contentHorizontalAlignment = UIControlContentHorizontalAlig原创 2016-09-18 14:25:54 · 461 阅读 · 0 评论 -
深入理解RunLoop
RunLoop 是 iOS 和 OS X 开发中非常基础的一个概念,这篇文章将从 CFRunLoop 的源码入手,介绍 RunLoop 的概念以及底层实现原理。之后会介绍一下在 iOS 中,苹果是如何利用 RunLoop 实现自动释放池、延迟回调、触摸事件、屏幕刷新等功能的。目录RunLoop 的概念RunLoop 与线程的关系RunLoop 对转载 2016-09-05 14:02:47 · 426 阅读 · 0 评论 -
深入理解Objective-C Runtime
当人们初学 Cocoa/Objective-C 时,Objective-C Runtime 是被忽略的特性之一。原因是 Objective-C(这门语言)很容易在几小时内就熟悉,新学 Cocoa 的人花费他们大部分的时间学习 Cocoa 框架和适应它是如何工作的。然而每个人至少应该知道一些 runtime 的工作细节,需要比知道编译器会把 [target doMethodWith:var1]; 转转载 2016-09-05 14:00:06 · 832 阅读 · 0 评论 -
最详尽的 Swift 代码规范指南
1. 代码格式1.1 使用四个空格进行缩进。1.2 每行最多160个字符,这样可以避免一行过长。 (Xcode->Preferences->Text Editing->Page guide at column: 设置成160即可)1.3 确保每个文件结尾都有空白行。1.4 确保每行都不以空白字符作为结尾 (Xcode->Preferences->Text Editi转载 2016-07-25 14:50:31 · 3336 阅读 · 0 评论 -
iOS TableView给力动画的简单实现
前言之前看见过很多动画, 都非常炫酷, 所以想弄一些比较简单的动画, 以后再项目中可能会用到, 以后还会持续更新类似的动画效果!GitHub下载地址: LRTableViewRollAnimation原文地址:http://www.cocoachina.com/ios/20160725/17172.html效果图:代码实现首先转载 2016-07-25 14:42:26 · 2567 阅读 · 0 评论 -
ios App启动加载广告页面思路
需求很多app(如淘宝、美团等)在启动图加载完毕后,还会显示几秒的广告,一般都有个跳过按钮可以跳过这个广告,有的app在点击广告页之后还会进入一个广告页面,点击返回进入首页。虽然说这个广告页面对用户体验来说并不是很好,但是如果真的有这个需求,我们还是要想办法去开发,至少这比内嵌广告要友善的多。今天我们就来开发一个广告页面,效果如下。思路1.广告页加载思路。广告页的内转载 2016-06-15 10:07:23 · 14103 阅读 · 1 评论 -
ios 支付宝支付 (github下载源码)
根据现在人们的消费习惯越来越多的APP里面都有添加支付宝支付和微信支付github下载地址:https://github.com/TianYou899/AliPayPS:这篇文章讲解支付宝支付微信支付请看下篇支付宝: 1:先与支付宝签约,获得商户ID(partner)和账号ID(seller)2:下载相应的公钥私钥文件(加密签名用)3:下载原创 2016-05-16 11:03:35 · 3051 阅读 · 2 评论 -
ios开发之倒计时实现的方法
方法1:使用GCD来实现//倒计时-(void)countdown{ __block int timeout=60; //倒计时时间 dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0); dispatch_source_t _timer = disp原创 2016-05-14 01:07:59 · 573 阅读 · 0 评论 -
3D Touch (github下载源码)
3D Touch 是苹果iOS9推出的新特性,同样是iPhone6s和6sPlus的一个新功能。之前的苹果设备则不能实现这样的功能。它的出现使app更加便捷化,能够让用户快速的定位到目的页面。实现3D Touch功能有 动态 和 静态 两种:动态: //标题一 UIApplicationShortcutItem *item1 = [[UIApplicati原创 2016-05-13 15:46:21 · 984 阅读 · 0 评论 -
ios 跳转系统设置位置、通知等
跳转到设置位置、通知、照片、麦克风等如下:NSURL *url = [NSURL URLWithString:UIApplicationOpenSettingsURLString]; if ([[UIApplication sharedApplication] canOpenURL:url]) { [[UIApplication sharedApplication] openUR原创 2016-06-07 16:03:49 · 1482 阅读 · 0 评论 -
ios获取手机型号、系统版本、设备唯一标识符、手机运营商等
直接代码://设备唯一标识符 NSString *identifierStr = [[[UIDevice currentDevice] identifierForVendor] UUIDString]; NSLog(@"设备唯一标识符:%@",identifierStr); //手机别名: 用户定义的名称 NSString* userPhoneName = [[原创 2016-05-18 14:41:47 · 23032 阅读 · 0 评论 -
iOS IPv6 最新升级攻略
苹果商店6月1日起,强制app需要支持IPv6-only的网络。iOS IPv6 最新升级攻略:1,官方Reachabilityhttps://developer.apple.com/library/ios/samplecode/Reachability/History/History.html#//apple_ref/doc/uid/DTS40007324-RevisionHisto转载 2016-05-18 14:24:58 · 976 阅读 · 0 评论 -
UILabel文字大小自适应之--SizeToFit
在做UIlabel的时候一直苦于没有好的方法来实时控制label的宽度,后来发现iOS自带一个sizeToFit的方法可以根据label里的文字来自动适应尺寸附上代码@interface ViewController () @property (strong, nonatomic) UITextField *textField;@property (strong, non转载 2016-06-27 13:57:03 · 1242 阅读 · 0 评论 -
ios NSDate获取星期几
直接上代码://获取星期几- (NSString*)weekdayStringFromDate:(NSDate*)inputDate { NSArray *weekdays = [NSArray arrayWithObjects: [NSNull null], @"星期日", @"周一", @"周二", @"周三", @"周四", @"周五", @"周六", nil];原创 2016-07-04 13:20:37 · 1182 阅读 · 0 评论 -
ios 自定义返回按钮侧滑失效完美解决方案
其实很简单很简单,只需要添加下面这一句代码即可:self.navigationController.interactivePopGestureRecognizer.delegate = (id)self;原创 2016-08-31 15:13:01 · 3510 阅读 · 1 评论 -
ios 数组最大值,最小值,平均值,和的快速算法
NSArray *testArray = [NSArray arrayWithObjects:@"2.0", @"2.3", @"3.0", @"4.0",@"10",nil]; NSNumber *sum1 = [testArray valueForKeyPath:@"@sum.floatValue"]; NSNumber *avg1 = [testArray转载 2016-08-08 11:06:04 · 2646 阅读 · 0 评论 -
如何优雅的谈论Objective-C
在面试中,我们经常会遇到一些原理性的问题,很常识但很难用通俗的语言解释清楚,这也是大部分业务级程序员经常失误的地方。虽然写了多年代码,但是核心思想不清,导致自己的后续发展受限,这是一个优秀的程序员和普通程序员的分水岭。要知其然而知其所以然!这也是整理这篇文章的初衷。文中结合了之前的一些文章,条理更清晰,内容更深入。本文包括:OC的面向对象运行时Runtime转载 2016-08-18 16:54:27 · 694 阅读 · 0 评论 -
谈谈ios传值方式(属性传值、代理传值、Block传值、单例传值、通知传值、KVC传值)
一下所有的演示由:AViewController 和 BViewController 完成简写(AVC和BVC)1.属性传值(AVC代码传到BVC代码):AVC 导入 BVCBVC声明属性//接收值@property (nonatomic, copy) NSString * string;BViewController * bVC = [[BViewCo原创 2016-08-03 10:48:22 · 1522 阅读 · 0 评论 -
ios 从一个tabBar跳转另一个tabBar
self.tabBarController.selectedIndex = 3;原创 2016-07-21 16:55:31 · 1944 阅读 · 0 评论