随笔分类 - [13] iOS-日记本
摘要:古老的C数组:优点:查询速度很快,直接通过下表找到对应的值缺点:修改、删除数据很慢,需要移动基于所有的其他的元素插入和删除一个元素,需要移动后面所有的元素改进的目标:实现快速增加,删除NSMutableArray的内部数据结构如下:几个主要变量:offset: 有效数据起始位置偏移量size: 实际占用的内存大小used: 数组的实际的有效数据个数*list: 实际内存的起始地址删除元素[ar...
阅读全文
摘要:ASCII码:我们知道,计算机内部,所有信息最终都是一个二进制值。每一个二进制位(bit)有0和1两种状态,因此八个二进制位就可以组合出256种状态,这被称为一个字节(byte)。也就是说,一个字节一共可以用来表示256种不同的状态,每一个状态对应一个符号,就是256个符号,从00000000到11111111。上个世纪60年代,美国制定了一套字符编码,对英语字符与二进制位之间的关系,做了统一规定...
阅读全文
摘要:Bug 出现场景:cell中使用加载图片的网络请求出现复用,截图如下:复用原因:Cell Model中只有一个用户的uid,所有用户相关信息:例如头像\名称\信息等是通过 block请求,通过uid 回调中取到的字段,但由于是在cell中通过系统的block回调中下载得到的头像,所以会有延时问题.当使用 self.collection reloadData ,这个语句的时候,由于4个...
阅读全文
摘要:1.提示的声明方法UIAlertView *alert = [[UIAlertViewalloc] initWithTitle:@"提示" message:@"您还没有支付哦,返回将取消订单,确认返回?"...
阅读全文
摘要:1 富文本 的实现效果2 方法的封装- (void)makeValueStringChangeWithPrice:(NSString *)price unit:(NSString *)unit{ NSString *str = [NSStringstringWithFormat:@"¥ %@元/%@",price,unit]; _valueLabel.text = str;...
阅读全文
摘要:1 IDSStarsScoreView的实现效果2 类的封装方法://// IDSStarsScoreView.h// Near//// Created by levi.duan on 2017/10/23.// Copyright © 2017年 Near. All rights reserved.//#import @classIDSStarsScoreView;@pr...
阅读全文
摘要:1 IDSGenderLeviNamedView 的实现效果2 类的封装方法:IDSGenderLeviNamedView.h@interface IDSGenderLeviNamedView : UIView@property (nonatomic, strong) UILabel *ageLabel;@property (nonatomic, strong) UIImageView...
阅读全文
摘要:利用 AVAudioPlayer 来播放音乐 :- 声明对象#import #import @property (nonatomic, strong) AVAudioPlayer *avAudioPlayer;- 播放函数NSURL *url = [[NSURLalloc] initWithString:[AppUtilurlEncodeToURLString:urlStr]];NSDa...
阅读全文
摘要:顺序如下:1.数组添加:for (id model in modellist.list) { IDSCommentWeplayList *commentListModel = [IDSCommentWeplayList mj_objectWithKeyValues:model]; [_commentArray cl_addObject:commentListModel]; I...
阅读全文
摘要:1.录制方式应用:初始化方法[[TXUGCRecordshareInstance] startCameraCustom:param preview:_showPlayerView];IDSLOG(@"Levi摄像机:第一步 初始化方法");开启录制[[TXUGCRecordshareInstance] startRecord];IDSLOG(@"Levi摄像机:第二步 开启录制");。结束...
阅读全文
摘要:截图如下 :功能:每次点击礼物,都要通过动画显示一个小图标,最多显示两行图标栏,送多次会显示然后再次显示,显示 XX 送给 XX 一个小礼物的动画样式.动画样式效果为,整体动画模块出现1秒,暂停1秒,消失一秒。功能实现:一个View 上面放了两个小模块,模块内包含两个imageView,3个UIlabel , 通过数组和BOOL开关来创造队列,控制多次打赏的动画显示顺序。首先判断数...
阅读全文
摘要:GIF 五部走如下 :1 从相册中取出GIF图的Data2 通过腾讯的IM发送Gif图3 展示GIF图4 GIF图URL缓存机制5 将展示的GIF图存到相册中一 从相册中取出GIF图中的Data1.TZImagePickerController中利用方法来获取到gif图片的image和asses- (void)imagePickerController:(TZImagePicker...
阅读全文
摘要:一、使用方法:#import "MJPhotoBrowser.h"#import "MJPhoto.h"- (void)tapPhoto:(UITapGestureRecognizer *)recognizer{ //1.创建图片浏览器 MJPhotoBrowser *brower = [[MJPhotoBrowser alloc] init]; //2.告诉图片浏览...
阅读全文
摘要:等级控件效果图:实现方式:自定义小控件,通过frame来获取它的坐标,然后通过富文本的方式来实现不同文字,由于文字粗体和斜体要同时使用,所以通过富文本实现比较方便;声明文件:其中有两个方法,一个是初始化,一个是改变等级需要调用的方法;#import @interface IDSLevelconView : UIImageView @property (nonatomic, st...
阅读全文
摘要:由于将确定按钮去掉了,所以需要重新修改下代码,当输入第四个数字时,自动进入房间。iOS 密码框效果图:实现方式:首先声明一个block初始化方法,因为这只是个框框,并不需要处理网络请求等等,需要提供一个block给调用方,调用方利用block 去拿到密码,利用密码做一些开房间等操作。利用计时器通过0.2秒来看清输入第四位密码,用户输入4位密码后自动进入下一步操作。1.头文件需要定义:...
阅读全文
摘要:说下导航栏的透明方法:很多应用需要导航栏随着向上滑动,逐渐从透明变成不透明,很炫酷,大部分应用都在使用导航栏渐变效果,现附上代码然后直接将实现,一会讲下如何来实现,这一部分直接上代码。先附上代码:方法声明:#import @interface IDSNavBarView : UIView - (instancetype)initWithFrame:(CGRect)frame ti...
阅读全文
摘要:一、用法:众所周知,设置控件的圆角使用layer.cornerRadius属性即可,但是这样设置成的结果是4个边角都是圆角类型。利用班赛尔曲线画角://利用班赛尔曲线画角UIBezierPath*bezierPath = [UIBezierPathbezierPathWithRoundedRect:button.boundsbyRoundingCorners:(UIRectCorne...
阅读全文
摘要:一、使用方式1.声明NSTimer方法staticCGFloat sIntervalTime = 15.f; //定时刷新时间间隔@property (nonatomic, strong) NSTimer *queryNoticeTimer;2.开启定时器,初始化定时器方法,注意一点是一定要先停止定时器判断,再开启,否则会出现内存泄漏哒,userInfo字段是传递数据时会用到,当调用定...
阅读全文
摘要:Goback()方法功能:返回上一级界面,通过判断popViewControllerAnimated类型是否为空,来判断是present还是pop出来,然后直接做了releaseSelf操作;- (void)goBack { IDSLOG(@"self: %@, parent: %@", self, [self parentViewController]); id page...
阅读全文
摘要:WebP 极限压缩及ios实现 Levi.duan 会议提纲 概念以及定义 什么是Webp ? WebP (发音 weppy ),是一种同时提供了有损压缩与无损压缩的图片文件格式,是Google新推出的影像技术,它可让网页图档有效进行压缩,同时又不影响图片格式兼容与实际清晰度,进而让整体网页下载速度
阅读全文