自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

小羊羊

Better memory than record

  • 博客(50)
  • 收藏
  • 关注

原创 Harmony------数据传递 存储

嵌套对象。

2024-07-31 20:38:39 907

原创 Harmony------应用程序框架

可以在onBackground()回调中释放UI不可见时无用的资源,或者在此回调中执行较为耗时的操作,例如状态保存等。onForeground()回调,在UIAbility的UI可见之前,如UIAbility切换至前台时触发。可以在onForeground()回调中申请系统需要的资源,或者重新申请在onBackground()中释放的资源。在UIAbility实例销毁之前,则会先进入onWindowStageDestroy()回调,可以在该回调中释放UI资源。方法设置应用要加载的页面,并根据需要调用。

2024-07-31 16:58:41 697

原创 Swift开发总结

声明一个静态的常量属性shared,它是Singleton类型的单一实例。: 将构造器设为private,防止外部直接创建Singleton类的新实例。在需要使用单例实例的地方,直接通过进行访问和操作。: 由于shared属性是静态的常量,在多线程环境下也能保证只有一个单例实例。Singleton类的实例会在第一次访问shared属性时才被创建,节省资源。: 单例类可以像普通类一样添加属性和方法,满足不同的需求。: 由于构造器是private的,可以通过依赖注入的方式来测试使用单例的类。

2024-07-23 16:27:11 854

原创 Harmony------ArkUI

【代码】Harmony学习(二)------ArkUI。

2024-07-21 02:11:48 208

原创 Harmony------ArkTS基础

【代码】Harmony------ArkTS基础。

2024-06-20 22:54:32 452

原创 vue学习(三)

【代码】vue学习(三)

2024-06-20 18:31:52 461

原创 Flutter学习(一)

【代码】Flutter学习(一)

2024-06-16 22:08:01 349 1

原创 vue学习(二)

【代码】vue学习(二)

2024-06-16 21:00:00 821 1

原创 vue学习(一)

1.vue是用于构建用户界面的渐进式js框架,自底向上逐层的应用: 简单应用:只需一个轻量小巧的核心库; 复杂应用:可以引入各式各样的vue插件; 2.vue特点: 采用组件化模式,提高代码复用率,更好维护(一个vue文件包含html css js,就是一个组件) 声明式编码,编码人员无需直接操作dom,提高开发效率 使用虚拟dom+优秀的diff算法,尽量复用dom节点 3.官网地址:cn.vuejs.org 风格指南:代码风格指南,个人习性写法差

2024-06-15 16:41:02 323

原创 iOS动画之Core Animation(一)

CATiledLayer:允许递增的显示大而复杂的图片,用于实现瓦片化的图层。它可以让你在应用程序中显示大量的图片或其他内容,而不会导致性能问题。CAScrollLayer:CALayer的子类,简化显示图层的一部分内容,CAScrollLayer对象的滚动区域的范围在他的子图层里面定义。1.可以直接或委托方式把图层的内容属性设置为 Core Graphics image。CATextLayer:可以方便的从字符串或字符串的内容创建一个图层类的内容。

2024-06-10 00:43:05 378

原创 微幼趣园所端技术支持

微幼趣园所端技术支持技术邮箱:81521653@qq.com隐私政策网址:https://www.privacypolicies.com/live/5df25940-094f-4909-b025-2129a04b1094

2023-06-03 01:53:09 109

原创 OC桥接Swift学习记录

OC调用swift: 1.在OC类,引用#import "weoil-Swift.h" 2.swift类的 变量 方法 前面要加上 @objcswift调用OC: 1.weoil-Bridging-Header 这个头文件是用来放swift要用到OC所用到的类 2.swift可以继承OC类 3.oc的方法在swift里面调用,可以换方法名:例子如下 -(void)eat NS_SWIFT_NAME(myE

2022-07-05 15:59:45 1047

原创 iOS 3DTouch的小细节

在App启动后,添加3DTouch的快捷入口,代码如下:NSMutableArray *arrShortcutItem = (NSMutableArray *)[UIApplication sharedApplication].shortcutItems;NSArray *typeArr = @[@"com.zhang.xxx.addOil",@"com.zhang.xxx.daijia",@"com.zhang.xxx.huafei"];UIApplicationShortcutItem *s

2022-02-23 10:26:58 1443

原创 three.js入门

要准备开始做3D展示的H5,所以准备在下班后和周末开始提前练习,学习。做一个3d h5,直接从webGL开始,不太现实,于是准备先练习使用框架,在three.js和Babylon纠结了一下后,考虑到:本人新手,three年代久远,社区活跃,于是选择了three。three中文社区:http://www.webgl3d.cn 在上面可以按步骤下载源码,和环境安装,本人家里用的windows,所以直接iis本地服务。three搭建界面基本元素,套路如下:1.创建一个场景(scene)场...

2020-08-09 19:17:44 208

原创 Clone Github失败的解决全过程

今天在Github上新建了一个项目,用来写demo,pod install 的时候一直失败,情况如下:Failed to connect to github.com port 443: Timed out 结果:显示为github链接超时 总体解决思路如下:先去终端ping一下github,是否为真的超时?如果真的超时,就去修改替换github ip,如果不是再去考虑git的配置问题。 打开终端,尝试命令:ping github.com 情况如下:Requ...

2020-08-06 11:15:12 9216 1

原创 汇编学习之基础指令

最近要借助一个facebook第三方框架,实现一些功能,必须要看看懂汇编,并使用汇编,于是开始学习汇编。汇编是怎么样的语言,来历背景,可参考:http://www.ruanyifeng.com/blog/2018/01/assembly-language-primer.html下面直接开始记录一些汇编的指令:push:将运算子放入stackcall:调用函数mov:将一个值写入某个寄存器add:将两个运算子相加,并将结果写入第一个运算子pop:取出stack最近一个写入的值(即最

2020-07-31 17:47:14 169

原创 算法(公式法):判断是否完全平方数

/**给定一个正整数 num,编写一个函数,如果 num 是一个完全平方数,则返回 True,否则返回 False。说明:不要使用任何内置的库函数,如 sqrt。示例 1:输入:16输出:True示例 2:输入:14输出:False*/// 利用公式法:1 + 3 + 5 + 7 + 9 + ... +(2n-1)...

2019-08-06 11:37:17 2030

原创 算法(栈):判断字符串是否有效

/**给定一个只包括 '(',')','{','}','[',']'的字符串,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。注意空字符串可被认为是有效字符串。示例 1:输入: "()"输出: true示例 2:输入: "()[]{}"输出: ...

2019-08-02 14:31:47 830

原创 算法(快排思想):求无序数组中的中位数

/**求无序数组当中的中位数(快排思想,选中关键字,高低交替扫描)示例:[@"1",@"9",@"6",@"8",@"3",@"2"]输出:@"3"*/+ (void)findMedianValue { NSMutableArray *array = [NSMutableArray arrayWithObjects:@"1",@"9"...

2019-08-01 17:22:01 2455

原创 算法(哈希查找):字符串中找到第一个只出现一次的字符

/**在一个字符串中找到第一个只出现一次的字符示例:@“abcdeffggab”输出 @“c”*/+ (void)findFirstString { NSString *str = @"abcdeffggab"; NSLog(@"输入字符:%@",str); NSMutableDictionary *dic = [NSMu...

2019-07-23 16:50:09 394

原创 算法(数组):有序数组合并

/**两个有序数组合并后依然有序示例:给定 arr1 = [2, 7, 11, 15] arr2 = [1, 5, 6, 8]返回 arr = [1,2,5,6,7,8,11,15]*/+ (void)mergeArray { NSArray *array1 = @[@"1",@"7",@"9",@"22",@"30",@"...

2019-07-23 16:11:42 492

原创 算法(反转):字符串 链表 反转

1.字符串反转:/**给定一个字符串 str 请假字符串反转输出示例:给定 str = @"I am a programmer"返回 str = @"remmargorp a ma I"*/+ (void)stringReverse{ char myStr[] = "I love my country"; char *left ...

2019-07-23 15:26:45 519

原创 算法(动态规划):最长回文数

/**给定一个字符串 s,找到 s 中最长的回文子串。你可以假设s 的最大长度为 1000。示例 1:输入: "babad"输出: "bab"注意: "aba" 也是一个有效答案。注意点:基数回文中心是一个元素。偶数回文中心是两个元素*/1.中心扩散法:遍历每个点位中心//使用中心扩散法得到回文数+ (NSString *)ge...

2019-07-23 10:56:56 1116

原创 算法(数组):两数之和

/**给定一个整数数组 nums和一个目标值 target,请你在该数组中找出和为目标值的那两个整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。示例:给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 =...

2019-07-23 10:49:23 589

原创 iOS基础:关键字(static,Extern,const)

Static关键字:局部变量:1.在内存中只初始化一次 2.延长生命周期,程序结束才销毁全局变量:1.作用域仅限当前文件,外部类使用Extern关键字也无法访问。作用于函数:对函数连接产生影响,使函数只在本文件内部有效,可以不用担心与其它文件的同名函数产生告饶。使用extern则使其可以让外部访问const关键字:修饰变量,含义是:const修饰的变量值是不可变的,...

2019-05-07 14:45:01 127

原创 Python基本语法学习一 (数字 字符串 字典 数组 元祖 运算符 循环)

#coding=utf-8print "hello python!";#raw_input("请输入内容:\n")#import sys;x = 'runoob';sys.stdout.write(x + '\n')print "以下是数字操作:"a,b = 200.32,54print a, bprint "以下是字符串操作:"str = "i love my wifi"...

2019-01-20 23:15:07 178

原创 iOS中的锁

OSSpinLock自旋锁(虽然已经被证明不安全优先级翻转),性能最高的锁。原理很简单,就是一直做而忙等。它的缺点是当等待时会消耗大量CPU资源,所以它不适用于较长时间的任务对于内存缓存的存取来说,它非常合适。轻量级,比如sideTable表的访问 dispatch_semaphore(同步)dispatch_semaphore是GCD用来同步的一种方式。允许通过等待/信号的信号事...

2018-12-25 22:07:25 774

原创 iOS 第三方框架

1.AFNetworking主要类关系图2.SDWebImage3.ReactiveCocoa4.AsyncDisplayKit基本原理:...

2018-12-23 19:02:19 111 1

原创 UI架构相关

2018-12-21 14:03:13 98 1

原创 iOS 设计原则和模式

1.单一职责原则:一个类只负责一件事2.开闭原则:对修改关闭,对扩展开放(类不要修改)3.接口隔离原则:使用多个专门的协议,而不是一个庞大臃肿的协议,协议中的方法尽量少(委托,数据源)4.依赖倒置原则:抽象不应该依赖于具体实现,具体实现可以依赖于抽象5.里氏替换原则:父类可以被子类无缝替换,且原有功能不受任何英雄(KVO)6.迪米特法则一个对象应当对其他对象有尽可能少的了解(高...

2018-12-21 13:32:02 66

原创 iOS 网络

1.http介绍请求报文:响应报文2.http的请求方式有哪些?get post head put delete options3.get和post方式的区别(rfc官方文档)get请求参数以?分割拼接到url后面,post请求参数在body里面get参数长度限制2048个字符,post没有限制安全性:不应该引起server端的任何状态变化:...

2018-12-21 12:04:27 97 1

原创 iOS RunLoop

1.什么是RunLoop?RunLoop是通过内部维护的事件循环来对事件、消息进行管理的一个对象没有消息需要处理时,休眠以避免资源占用 (用户态 变成 内核态(进程))有消息需要处理时,离开被唤醒 (内核态 变成 用户态)2.RunLoop的数据结构NSRunLoop(foundation)是CFRunLoop(corefoundation)的封装,提供了面向对象的AP...

2018-12-20 08:43:44 101 1

原创 iOS 内存管理

1.内存布局堆栈:方法调用堆:通过ALLOC等分配的对象BSS:未初始化的全局变量等数据:已初始化的全局变量文本:程序代码2.内存管理方案TaggedPointer:小对象(NSNumber)(非指针型isa)NONPOINTER_ISA 64位架构iOS应用占用64位,本身32 40就够用,为了提高内存利用,剩余比特位存储内存管理相关内容散...

2018-12-19 22:00:35 50 1

原创 iOS OC

1.你用分类做了哪些事情?声明私有方法 分解体积庞大的类 把framework私有方法公开化2.分类的特点?运行时决议(扩展是编译) 可以为系统类添加分类 分类添加的方法可以“覆盖”原类方法3.分类可以添加哪些内容?实例方法 类方法 协议 属性(get方法set方法 添加实例变量需要通过关联技术)4.分类结构体5.分类加载调用栈_objc_in...

2018-12-19 22:00:17 62 1

原创 iOS Block

1.什么是块2.block的本质3.截获变量4 .__块修饰符5.block的内存管理6.block的复制操作:7。8.copy9.栈上__block变量的拷贝操作10 .__转发存在的意义11.block的循环引用...

2018-12-19 21:59:12 60

原创 iOS Runtime

1.objc_object2.objc_class3.isa指针ISA指向4.cache_tcache_t数据结构5.class_data_bits_t6.class_rw_t7.class_ro_t8.method_t9.类型编码const char *类型10.总结:11.对象类对象元类对象...

2018-12-19 21:58:46 55 1

原创 iOS 多线程

1.怎么用GCD实现多读单写dispatch_barrier_async2.ios系统为我们提供的几种多程序技术各自的特点是怎样的?GCD:实现一些简单的线程同步,子线程的分派,包括一些类似于多读单写nsoperation:比如adnetworking sdwebimage特点比如对任务的状态进行控制,包括添加依赖,移除依赖nsthread:实现常驻线程3.nsoperat...

2018-12-19 21:58:19 88 1

原创 iOS UI

1.数据源同步方案?并发访问,深拷贝,记录操作(耗内存,记录操作);串行访问,排版和操作全部在一个子线程串行队列操作(任务多,会延时)2.UIView和CALayer的关系?的UIView只负责处理触摸等事件,参与响应链; CALayer的负责显示内容的内容uiview包含一个calayer和一个bgcolor(bgcolor对层同名属性方法的包装)显示部分是图层的内容(后备...

2018-12-19 21:57:41 64 1

转载 Mac更新npm和node版本

故宫:查看当前版本:npm --version更新到最新版: sudo npm install npm@latest -g 1.查看当前版本: node 1  node -v 2.清除NPM当前缓存信息: 2 sudo npm cache clean -f 3.执行下载节点:...

2018-12-16 13:18:46 673

原创 react-native :command not found 在别的路径不能使用react-native命令解决

1. 在终端输入命令: sudo npm install -g react-native-cli  出现的一个类似:/usr/......的路径记录下路,这里叫做路径A2.使用vim命令 输入:vim ~/.bash_profile     在里面加入:export RN=路径A                         export PATH=$RN:$PATH   然后按...

2018-12-16 13:17:51 3443

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除