- 博客(37)
- 资源 (2)
- 收藏
- 关注
原创 解决异常:“The last packet sent successfully to the server was 0 milliseconds ago. ”的办法
解决异常:“The last packet sent successfully to the server was 0 milliseconds ago. ”的办法
2022-04-05 15:13:48
16619
原创 Eureka 心跳机制
基本阐述心跳机制是定时发送一个自定义的结构体(心跳包),让对方知道自己还活着,以确保连接的有效性的机制。 心跳机制是每隔几分钟发送一个固定信息给服务端,服务端手收到后回复一个固定的信息。如果服务端几分钟内没有收到客户端消息则视客户端断开。 发送方可以是客户端或服务端,根据实际情况,一般是客户端;因为一个服务端可能有很多客户端,服务端作为发送方的比较耗费性能。 应用场景:判断长连接是否真正...
2018-12-21 13:53:51
3889
原创 服务器带宽
互联网公司的服务器带宽都是光纤入户,独享带宽直接接到服务器机房电机房,然后由企业自己的交换机进行分配。 家用带宽是共享的,一般采用ADSL MODEM或者CABLE MODEM接入。 网站所需带宽/8=单位时间内的访问数*平均页面大小。 访问数 = UV * 页面个数 * PV 比如带宽是1Mbps,那么速率大约是1024KBps/8 = 128KB/s 如果访问的页面大小为128K,那...
2018-12-21 13:50:31
388
原创 从使用上看RJBadgeKit功能层次
一、从使用上看RJBadgeKit功能层次0、代码在:https://github.com/LovePeach/RJBadgeKit 1. 准备:目标控件、红点路径 2. 在RJBadgeController注册“红点路径” 3. 为当前对象实例化一个RJBadgeController的一个爪牙 4. 让爪牙作为当前对象的观察者 5. 在当前对象里观察“目标”控件的“红点路径”,并指定“动
2018-01-21 11:22:28
651
原创 跳一跳源代码使用介绍
源码地址:https://github.com/LovePeach/WechatJump 工具介绍 ● Python ● 手机或模拟器 ● ADB驱动,可以到【https://adb.clockworkmod.com/】下载 ● 相关依赖如果你是iOS + MacOS,请参考下面的配置: ● 使用真机调试WDA,参考iOS真机如何安装WebDriverAgent
2018-01-04 07:36:12
11596
原创 让一个视图在随着贝塞尔曲线的变化上动起来
具体demo@上海-邓泽淼 1、涉及概念 1)UIDynamicItemCollisionBoundsType 碰撞界限的枚举类型(矩形,椭圆,路径) 2)CADisplayLink是一个能让我们以和屏幕刷新率相同的频率将内容画到屏幕上的定时器。我们在应用中创建一个新的 CADisplayLink 对象,把它添加到一个runloop中,并给它提供一个 target 和selector 在屏幕刷新
2017-02-10 16:55:01
1222
原创 iOS App程序在调用main()之前做了那些事情?
1、APP启动时间 1)main之前的系统dylib(动态链接库)和自身App可执行文件的加载的时间 2)main之后执行didFinishLaunchingWithOptions:结束前的时间 2、main之前的加载过程 1)首先加载可执行文件(自身app的所有.o文件集合) 2)然后加载动态链接库dyld,dyld是一个专门用来加载动态链接库的库 3)执行从dyld开始,dyld从可
2017-02-10 11:44:32
3372
原创 操作实践总结
Git相关1、 首次将本地develop分支提交到远程develop分支,并且track git push -u origin develop (第二次以上 git push origin develop)2、设置git 提交缓存大小 默认上限为1M所致 下面是改成500M git config http.p
2016-09-29 17:41:33
255
原创 2015年07月21日第13天笔记
一、导航控制器连线 从一个TableView控制器到View控制器 1)两个控制器要有对应的关联类 2)TableView的cell要设置id,保证在关联类里取到它,负责导航连线无效,因为压根就没取到它 3)用cell把View控制器push进来 4)再往TableView的导航条里拖左右item(注意:如果这个TableView是拖导航控制器自带的,那么只能拖右边的) 5)如果往Tab
2015-07-23 07:01:01
462
原创 2015年07月21日第12天笔记
零碎知识1.新建-Other-PCH文件 2.作用:导入常用的头文件; 3.乱码转中文的文件类在素材里 4.关联PCH:点击项目 Buiset栏 搜header 改写PCH的路径(拖到终端得到路径)这样写是全路径,不能跨平台 5.另一种方法:随便输入一个字符编译下,然后输入相对路径编译;就可以跨平台了或跨项目了 6.pch第二点作用:导入常用的宏如定义屏幕的宽高 7.NSLog损耗性
2015-07-21 00:45:07
449
原创 2015年07月18日第11天笔记
零碎知快捷键 1.自己百度 2.有多少字典就有多少个模型 3.根类型决定控制器要定义的存数据的类型 4.从文件获取数据称作“解析” 5.导入头文件的快捷键 6.插件整理代码格式 7.pickView的数据源方法 8.标题forRow,视图forRow 9.连一个线,自动生成代码后,复制几份以备其他xib控件使用 修改后反连线 10.loadNibName mainBundl
2015-07-19 19:29:11
488
原创 2015年07月15日第10天笔记
1.屏幕的发展过程导致屏幕适配的技术在更新1)4S以前屏幕不变,且应用程序没有横屏和竖屏都存在的,于是用的是frame技术 2)ipad的出现,1)屏幕改变 2)横屏和竖屏都存在,于是出现了autoresizing技术:解决父子关系 3)5以后,横屏和竖屏的应用变的越来越多,要求不仅可以解决父子关,还可以解决兄弟关系,于是出现了autolayout技术 4)6后,为了适应不同屏幕出现了size
2015-07-19 19:24:10
342
原创 2015年07月13日第九天笔记
QQ好友列表细节归纳 ===在控制器=== 1.将Main.storyboard对应的的控制器换成自定义的控制器 面板设置 2.设置组高:self.tableView.sectionHeaderHeight = 44; 3.根据组模型特点返回对应行数:return group.open? group.friends.count:0; 4.在viewForHeaderInSection方法里
2015-07-19 19:22:39
338
原创 2015年07月11日第八天笔记
细节归纳 一、控制器里的细节 1)是否允许cell被选中 self.tableView.allowSelection = NO;2) 设置分割线的样式self.tableView.separatorStyle = UITableViewCellSeparatorStyleNone;3) 设置自定义的颜色self.tableView.backgroundColor = [UIColor col
2015-07-19 19:19:19
406
原创 2015年07月09日第七天笔记
团购思路归纳1.自带cell-(UITableViewCell *) tableView:(UITableView *)TableView cellforRowAtIndexPath:(NSIndexPath *)indexPath{ //定义一个静态标识(命名和业务逻辑有关) static NSString *ID = @“groupPusrchase”; //到缓冲池去
2015-07-19 19:14:30
431
原创 2015年07月07日第六天笔记
UITableView 控件 1、拖一个控件UITableView 2、将控件的数据源代理设置为当前控制器 self.tableView.dataSource = self. 3.实现协议要求必须实现的两个方法 1)告诉控件一个分组有多少行-(NSInteger) tableView:(UITableView *) tableView numberOfRowsInSection:(NSIn
2015-07-19 19:10:27
350
原创 2015年07月06日第五天笔记
2015年07月06日11:37:04新知识 1.告诉scrollView控件的滚动的范围 图片不动的的 self.scrollView.contentSize = [UIImage imageNamed@“yidong”].size; 2.在scrollView四周增加额外的滚动区域 self.scrollView.contentInset = UIEdgeInsetsMake(上,左,下
2015-07-19 19:02:50
289
原创 2015年07月04日第四天笔记
应用管理 2015年07月04日14:04:52 思路归纳1.图像变大 1)记录原来图像的frame,以便在恢复方法里用 2)计算放大后图片的位置 要考虑的 动画的时候 只做改变frame的操作 3)创建并添加一个遮罩层(实际是个按钮),设置其背景颜色,开始透明度,注册点击事件 要考虑的 动画之前 创建,添加,设置颜色,设置默认透明度为0,是否会在别的方法用 动画时候 改变透
2015-07-19 19:02:04
399
原创 2015年07月03日第三天笔记
2015年07月03日12:09:46 细节归纳1.获取屏幕的宽度 CGFloat screenW = self.view.frame.size.width; 2.求边距 (屏幕的宽度-列数*app的宽度)/ (列数+1) 3.用fame初始化一个UIView对象 UIView *view = [[UIView alloc] initWithFrame:CGRectMake(x,y,w,
2015-07-19 19:01:14
366
原创 2015年07月01日第二天笔记
昨天遗留 1.动态产生按钮赋给事先定义的属性,就可以全局使用它了 2015年07月01日08:19:12 1.整理电脑内存垃圾:cleanMyMac 软件2.消化今天,预习 第3、4天 因为比较难3.图片浏览器4.汤姆猫5.QQ登录 1)看要求,分析需要完成步骤 分析1)控件可以全选,按方向键移动 2)Placeholder:设置默认文本 3)Keyboard style:只显示数字键
2015-07-19 18:59:51
996
原创 2015年06月30日第一天笔记
一、按钮的基本使用 frame 相当于父控件的左上角需求:上下左右移动带背景图片的按钮,增大和见下带背景图片的按钮分析 1)要定义一个按钮 2)定义上下左右 用frame.origin.x/y,变大,变小的方法frame.size.height/width知识定义按钮 1)连线属性 IBOutlet 2)按钮类名 UIButton 定义方法 1)方法类型 IBAction 方法实现
2015-07-19 18:56:25
383
原创 OC07block和protocol学习
一、 Block代码块1.block的数据类型 作用:用来保存代码的,在程序运行过程 保存.................
2015-05-03 21:44:29
335
原创 OC06 内存管理学习
——主题1:为什么管理内存1.管理内存,管不好,会导致内存泄露,导致一运行就报错2.一旦程序超出内存,系统会提示占用内存不足3.1局部变量,函数一结束就自动释放3.2堆:动态产生的数据;栈:刚定义就有的局部变量的数据4.对象的内存是放在堆里的;指针放在栈里5.堆空间是代码手动回收的6.内存管理一般指的时堆空间
2015-05-03 20:53:49
342
原创 OC05核心语法总结 2
六、 分类知识点主题1:分类category依赖于类,新建时,创建category模板1.不改变原来类模型的基础上来扩充方法2.格式:@interface 类名(分类名称) -@end@implementation 类名(分类名称)@end3.调用:首先把相应的头文件包含进来[p study];......
2015-05-03 17:58:16
498
原创 OC04核心语法总结 1
一、 点语法知识点1.用点语法替换set和get方法 1)获取年龄:[p age];设置:[p setAge:10]; 2)用点语法替代1):p.age=10; 3)原理:不是访问成员变量 ,访问成员变量用->; 当编译器遇到点语法时,会自动展开为1)的形式[p setAge:10];
2015-05-03 16:36:55
472
原创 OC03三大特性学习
一、 面向对象特性之封装知识点1.封装说的是对成员变量的封装和间接访问2.封装涉及两个对象方法:set方法和get方法3.好处:①安全隐藏内部细节②set方法监听成员变量的改变 一旦改变就做出相应处理行为(**)...................
2015-04-26 11:12:34
598
原创 OC02类和对象学习
面向对象和面向过程思想OC是面向对象的,C是面向过程的。面向对象和面向过程只是解决问题的两种不同思想面向过程关注的是解决问题需要哪些步骤;面向对象关注的是解决问题需要哪些对象................
2015-04-25 21:32:59
369
原创 基本语法学习
OC语言1. C语言的基础上,增加了一层最小的面向对象语法2. 完全兼容C语言3. 可以在OC代码中混入C语言代码,甚至是C++代码
2015-04-25 08:45:44
596
原创 C05枚举
一、枚举是什么?枚举是C语言中的一种基本数据类型,并不是构造类型,它可以用于声明一组常数。当一个变量有几个固定的可能取值时,可以将这个变量定义为枚举类型。
2015-04-20 09:01:48
473
原创 C04结构体
1.与C语言中的数组,用法跟其他语言差不多。当一个整体由多个数据构成时,可以用数组来表示这个整体,但是数组有个特点:内部的每一个元素都必须是相同类型的数据。2.通常需要由不同类型的数据来构成一个整体,就出现了C语言的结构体
2015-04-18 10:52:19
438
原创 C01函数
一、函数是什么? 1.任何一个C语言程序都是由一个或者多个程序段(小程序)构成的,每个程序段都有自己的功能,我们一般称这些程序段为“函数”。所以,你可以说C语言程序是由函数构成的。 2.函数就是功能。每一个函数用来实现一个特定的功能。起函数的名字时候应反映其代表的功能。 3.函数形式分三种:空函数,无参函数,
2015-04-03 13:20:00
627
1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人