移动开发

【Android Studio】如何卸载干净(详细步骤)

Android SDK(软件开发工具包)是Android应用程序开发的重要工具,当你不再需要它、准备重新安装或迁移到其他系统时,完全卸载它是非常重要的步骤。因为一般电脑卸载 Android Studio 时容易落下一堆配置文件没删,卸载不干净导致无用文件占用空间或者影响其他版本软件的安装使用。总之,为什么需要完全卸

Android ViewPager嵌套的手势冲突,分别用`内部拦截法` 和 `外部拦截法` 两种方式。看懂你就明白所有的手势处理的流程了

简介: 用内部拦截法 和 外部拦截法 两种方式处理两个横向的ViewPager嵌套的手势冲突 最终实现效果:按住右侧部分横滑就是滑动大ViewPager。类似抖音的首页 这个demo看懂你就明白所有的手势处理的流程了 github地址 功能: ✅Demo展示了 内部拦截法 和 外部拦截法 两种方式 ✅海量的代码注释,且注明了为什么要调用这行代码,如果不调用会怎么样 ✅看懂这个demo,所有的手势

iOS - 自定义弹窗

通过xib创建一个自定义弹窗: 该弹窗可以自定义view的背景,颜色,字体的大小,颜色调整 方便编写,调用简单: image.png LoginAlertTableView.h image.png LoginAlertTableView.m import "LoginAlertTableView.h" @interface LoginAlertTableView() @pr

对iOS定位授权弹窗机制的理解

一、概述 由于最近在开发跑步相关的功能,涉及到地图定位功能,因此需要申请定位权限,之前APP中有定位需要,但因之前未细致的研究授权模式的配置,导致在开发跑步功能时产生了从未遇到的异常问题。 二、遇到的问题 问题描述: 问题描述:首次安装APP,授权定位权限为WhenInUse使用期间定位定位,然后开启跑步,此时接收定位回调,将APP切入后台等待3-5秒钟后,发现定位回调不再继续回调给APP,

3分钟看懂Android Studio下拉框组件

什么是下拉框? 实现步骤:一、布局文件中添加Spinner组件<LinearLayout xmlns:android="#34; android:layout_width="match_parent" android:lay

Vue如何检测数组变化

原理分析: 在数据初始化时调用initData方法,然后通过new Observer对数据进行监测,然后对数据进行判断,如果是数组并且支持原型链,就会执行protoAugment让目标原型链指向arrayMethods,arrayMethods用来改写数组的原型方法。内部会采用函数劫持的方式,当用户调用这些方法(push,pop,shift,unshift,sort,splice,reverse)

端到端同屏的方案

场景:桌面端应用(electron开发)同屏到pad端(uni-app开发)。 方案一:socket指令发送操作步骤。 思路:前提是桌面端与pad端显示的前端页面一样,即桌面端执行一个操作后,立即把该操作发送到pad端,pad接收到后执行该操作。 痛点:工作量大,要把服务端即桌面端的代码在pad上重新开发一遍。 方案二:electron推流,uni-app拉流。 思路:electron中用ffmp

iOS启动优化-1

启动优化基本概念1 虚拟内存 & 物理内存 早期的数据访问是直接通过物理地址访问的,这种方式有以下两个问题: 1、内存不够用 2、内存数据的安全问题 内存不够用的方案:虚拟内存 针对问题1,我们在进程和物理内存之间增加一个中间层,这个中间层就是所谓的虚拟内存,主要用于解决当多个进程同时存在时,对物理内存的管理。提高了CPU的利用率,使多个进程可以同时、按需加载。所以虚拟内存其本质就是一

React Native 0.70 发布,Hermes 成为默认引擎

React Native 0.70 版本正式发布,这个版本有几项改进,比如 Codegen 的新的统一配置、Hermes 作为默认引擎、对 Android 构建的完整 CMake 支持,还有对新架构文档的更新。 具体更新内容如下: New Architecture 的新文档 在过去的几个月里,Meta 一直在努力为文档中的 New Architecture 部分增加更多的内容。在新的部分,你可以找

C++ Primer Plus习题及答案-第十二章

习题选自:C++ Primer Plus(第六版) 内容仅供参考,如有错误,欢迎指正 ! c++使用new和delete运算符来动态控制内存。 对于静态成员,要在类声明之外使用单独语句进行初始化,因为静态类成员函数是单独存储的,而不是对象的组成部分,而且初始化是在方法文件中,而不是在头文件中,这是因为类声明位于头文件中,程序可能将头文件包括在其他几个文件中,如果在头文件中初始化,将出现多个