- 博客(19)
- 资源 (3)
- 收藏
- 关注
原创 iOS UDID UUID 广告标识符的区别
NSString *UUID = [[NSUUID UUID] UUIDString]; //通过运行程序可以发现,循环10次,每一次打印的值都是不一样的,当然循环的再多,这个值永远不会出现两个一样的值。所以从某种程序上来说,UUID跟你的设备没有什么关系了。也就是说,没有什么卵用 NSString *Str1 = [[[ASIdentifierManager
2017-03-23 15:31:01 1003
原创 iOS 使用KeyChain保存数据
一般情况下,可以用NSUserDefaults存储数据信息,但是对于一些私密信息,比如账号、密码等等,就需要使用更为安全的keychain了。而Keychain的信息是存在于每个应用(app)的沙盒之外的,所以keychain里保存的信息不会因App被删除而丢失,在用户重新安装App后数据还在。新建一个类,取名JJKeyChain,如下:#import #import #defin
2017-03-23 14:13:55 1765
原创 iOS 冒泡排序研究
最近重新看了下冒泡排序算法代码: NSMutableArray *numarr = [NSMutableArray arrayWithObjects:@1,@3,@2,@5,@4, nil]; for (int i = 1; i<numarr.count; i++) { for (int j = 0; j<numarr.count - 1;
2017-03-22 16:04:24 440
原创 iOS 时间戳转日期
新建一个NSObject类+(NSString *)timeConvert:(NSString *)dataString{ NSDateFormatter* formatter = [[NSDateFormatter alloc]init]; [formatter setDateStyle:NSDateFormatterMediumStyle]; [formatter
2017-03-15 17:41:54 1072
原创 Swift for循环
大部分开发者更喜欢直接使用C式循环代码。在swift3.0后,C语言形式被彻底废弃.1:如何遍历一个字典或者数组? 首先要提的是swift的for..in..语法,这个语法在python当中被称之为迭代。用于数组,字典之类的数据内容遍历。从作用上分析,是直接将数组元素赋值给变量,并取出,无需通过数组下标来取值。而针对于字典,除了取出key值,我们还可以同时取出关键字。具体代码
2017-03-15 14:19:01 2069
原创 iOS 常用宏定义Macros
新建一个.h文件,把自动生成的代码删掉,把下面的代码复制进去,导入头文件到pch,就可以用了//// JJMacros.h// test2.7//// Created by muzhong on 2017/3/14.// Copyright © 2017年 muzhong. All rights reserved.//#import // for mach_abso
2017-03-14 17:46:03 1379
原创 iOS Block弱引用
先weak再strong.可以很好的管理Block内部对self的引用常规写法 __weak typeof(self) weakSelf = self; self.Button.rac_command = [[RACCommand alloc] initWithEnabled:textSig signalBlock:^RACSignal *(NSString * input)
2017-03-14 17:36:31 2438
原创 Swift 懒加载
private lazy var nameTF:UITextField = { return UITextField.init() }()
2017-03-14 13:44:38 378
原创 iOS 网络错误view封装
封装一个网络请求失败的view ,有一个重新加载按钮,点击重新走网络请求新建一个继承于UIView的类.h文件#import typedef void (^ButtonBlock) (id sender);@interface XSNoDataView : UIView- (void)addButtonAction:(ButtonBlock)block;@end.m
2017-03-13 16:08:30 469
原创 iOS GCD单例
单例模式可能是设计模式中最简单的形式了,这一模式的意图就是使得类中的一个对象成为系统中的唯一实例。它提供了对类的对象所提供的资源的全局访问点。因此需要用一种只允许生成对象类的唯一实例的机制。我们来看下单例的作用:可以保证的程序运行过程,一个类只有一个示例,而且该实例易于供外界访问从而方便地控制了实例个数,并节约系统资源。下面我们利用GCD写一个单例类新建一个继承NSObject
2017-03-10 13:35:08 498
原创 iOS 三目运算符
看到有人问User?YES:NO是什么意思,正好讲一个三目运算符1、基本格式 : (关系表达式) ? 表达式1 : 表达式2; 执行流程 : 关系表达式为 真 返回表达式1 关系表达式为假 返回表达式2 举个例子 MZUserApplication *USER; if (USER?YES:NO){ NSLog(@"yes");
2017-03-10 13:27:42 14862
原创 iOS 动画应用
_redView是需要添加动画的viewNSString *subtypeString; subtypeString = kCATransitionFromLeft; [self transitionWithType:@"oglFlip" WithSubtype:subtypeString ForView:_redView];- (void
2017-03-09 18:10:12 373
原创 iOS 页面跳转过渡类型
过渡类型(Transition)是从一个场景切换到另一个场景时播放的动画。四种setModalTransitionStyle风格UIModalTransitionStyleCoverVertical 从底部滑入UIModalTransitionStyleFlipHorizontal,水平翻转进入UIModalTransitionStyleCrossDissolve,交叉溶解UIMod
2017-03-09 16:56:14 2688
原创 Swift Delegate使用
我们以UItableViewcell里按钮点点击事件作为例子在cell里声明一个delegate weak var delegate:MZAccumulateCellDelegate?需要实现的方法 protocol MZAccumulateCellDelegate:NSObjectProtocol { func buyButtonDidCli...
2017-03-09 11:25:17 523 1
原创 iOS AsyncDisplayKit简介
AsyncDisplayKit的基本使用单元是node. ASDisplayNode是一个UIView层之上的封装,就像UIView是对CALayer的封装一样。跟View不一样的是,node是线程安全(比如uiview的操作就不是线程安全的,在非UI线程无法操作UIView)的,就是说你在非主线程对node进行初始化以及配置它们的层级操作都是安全的。为了让用户界面平滑并且随时可以相应,a
2017-03-08 17:58:00 708
原创 iOS 经典题库
1. Object-c的类可以多重继承么?可以实现多个接口么?Category是什么?重写一个类的方式用继承好还是分类好? Object-c的类不可以多重继承;可以实现多个接口,通过实现多个接口可以完成C++的多重继承;Category是类别,一般情况用分类好,用Category去重写类的方法,仅对本Category有效,不会影响到其他类与原有类的关系。2.#import 跟#incl
2017-03-07 10:27:44 743 1
原创 Swift 判断是否是数字
有人利用Int判断,会发现如果有小数点就判断为不是数字了,这里我们改为通过float判断,如果包含小数点也可以正确判断代码如下: func isPurnFloat(string: String) -> Bool { let scan: Scanner = Scanner(string: string) var val:F
2017-03-06 17:48:06 9668
原创 Swift Block传值
Swift3.0来实现传值-->前后两个控制器的反向传值,这里传递了一个地址的model第一个类 let address = MZAddressManagerViewController.init() address.orderInfo = self.orderInfo //将当前someFunctionThatT
2017-03-02 11:10:46 2741
原创 Swift Date转String
在Swift3.0下1.获取当前时间并转成字符串func dateNowAsString() -> String { let nowDate = Date() let timeZone = TimeZone.init(identifier: "UTC") let formatter = DateFormatter() for
2017-03-01 18:22:55 4796
uniapp H5集成微信JS支付
2020-03-26
Flux mac去蓝光护眼
2020-02-26
libstdc++.6.0.9.tbd
2018-10-31
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人