移动开发

iOS关联对象objc_setAssociatedObject探讨

主要函数为: //为给定的对象设置一个关联值 public func objc_setAssociatedObject(_ object: Any, _ key: UnsafeRawPointer, _ value: Any?, _ policy: objc_AssociationPolicy) //返回与给定键的给定对象关联的值 public func objc_getAssociatedObj

vue防止内存泄漏的几点写法

1、beforeDestroy beforeDestroy周期一般是在组件销毁时调用,比如使用v-if进行组件的显示隐藏,或者页面跳转时就会调用到这个周期。 堆内存使用后一定要注意释放,否则gc总不回收就会导致内存泄漏。 比如对dom的引用、事件Listener、总线eventBus等,一定要在beforeDestroy里释放解绑。 export default { nam

iOS14 Universal Link隐藏顶部横幅方法

配置好Universal Link之后顶部都会有一个打开app的横幅,有时候我们不想显示这个横幅,iOS14之后苹果官方给出了解决办法。 假设Universal Link为www.abc.com 在浏览器输入www.abc.com会自动定位到www.abc.com/main,这时如果想要隐藏www.abc.com/main这个地址下顶部的横幅,方法如下: 单个app: { "applinks"

超全的12种数组去重的方法

方法1、双重for循环 这是一个最笨的方法,双重循环。 var arr = [1, 2, 3,4 ,5,6, 4, 3, 8, 1] // 数组去重: // 方法1: 双重for 循环 function newArrFn (arr) { // 创建一个新的空数组 let newArr = [] for(let i = 0;i<arr

07_Android协程

Android协程     本文以网络请求为例,由浅入深,来说明协程在Android中的使用方式。后半部分介绍一些协程概念。 (1)添加依赖项     如下: dependencies { implementation("org.jetbrains.kotlinx:kotlinx-coroutines-android:1.3.9") } (2)网络请求函数     这是一个同步的阻塞函数

Swift Protocol

- 用于通信 一个简单的例子: 比如你封装了一个View, 需要回调出去一个按钮事件 class TestView: UIView { // 注意这里要使用weak标记 weak var delegate: TestViewProtocol? fileprivate lazy var iEnterBtn: UIButton = { let btn

常用的Flutter第三方库 2022-05-17 周二

简介 不论是iOS开发,还是Android开发,使用第三方库是必不可少的。 现在,切换到Flutter,面临的第一个问题就是该用哪些第三方库? 所有代码都需要自己写?当然不会。 常用的第三方库概览 dependencies: flutter: sdk: flutter # The following adds the Cupertino Icons font to your a

computed、watch和watchEffect区别

computed: 计算属性将基于它们的响应依赖关系缓存,本质上是为了简化模版中的逻辑 const firstName = ref("Mir"); const secondName= ref("joy"); const fullName = computed(()=> firstName.value +" "+secondName.value) 支持set方法: let full

RecyclerView卡顿案例和解决方案

记录一次RecyclerView卡顿案例和解决方案。 需求:界面由两部分组成,顶部一个图片,图片下面是列表。在列表滑动时,图片跟着滑动。 实现:NestedScrollView [ LinearLayout [ ImageView , RecyclerView ] ]。 结果:当数据量较大时,RecyclerView 会越划越卡。 原因:NestedScrollView 嵌套 RecyclerVi

TS进阶之keyof

刷完了type-challenges的所有简单和中等难度的题目后,对TypeScript的类型操作有了一些新的理解和认识。特此用几篇文章来记录下一些重要的知识点。 本系列文章需要您对TypeScript有基本的了解 基本用法 JavaScript通过Object.keys()获取对象的所有属性键值,而typescript主要关注的是类型操作,通过 keyof 操作符可以获取对象中的所有键类型组