背景 有时候,一个仓库太大(包含很多个工程),下载费时,又占电脑的空间。如何只下载其中一个工程(子目录)呢? 稀疏检出(Spare Checkout) git 的 Spare...
背景 有时候,一个仓库太大(包含很多个工程),下载费时,又占电脑的空间。如何只下载其中一个工程(子目录)呢? 稀疏检出(Spare Checkout) git 的 Spare...
const 修饰内置数据类型 const 修饰内置数据类型,那么之后就不允许修改了,否则编译阶段会报错。 const 修饰自定义数据类型 如果要用 const 修饰自定义...
这个直接将所有操作插件化了👍
Android Studio 如何自动格式化代码和整理 ImportAndroid Studio 虽然保存是自动的,但是不会帮我们格式化代码,也不会帮我们整理 Import。 接下来我们就来介绍下怎么怎么借助 Android Studio 的...
Java 8 是一个成功的版本,新增的内容很实用。比如大家熟悉的 lamda 表达式,集合的 Stream,等等。本文讲讲 Stream 的使用。 Stream 是什么? S...
背景 以前,Android 开发者习惯在根目录建一个自己应用的文件夹,用于存放应用的数据。这样会导致用户卸载后,应用数据不会随之删除。导致手机文件特别混乱,长期占用空间,而且...
背景 今天在通过 RadioGroup 的 clearCheck 方法将所有的 RadioButton 设置为非选中的时候,发现怎么也不行。 解决 通过 debug,发现 c...
背景 今天在自定义 View 中添加 layout 文件的时候,使用了如下方式: 最后一个参数传了 true,就是想偷懒,省去 addView 的操作。然后对 view 设置...
1. 环境准备 安装 Apktool 使用 Apktool 可以解包 apk照着官网的安装步骤安装:https://ibotpeaches.github.io/Apktool...
View 的构造函数有四个: public View(Context context) public View(Context context, @Nullable Attr...
先来看一个自定义属性重复的例子: attrs.xml 这样会报错如下:Found item Attr/color_type more than one time 解决办法也很...
当我们自定义 View 的时候,至少要定义两个构造函数。 第二个构造函数中的参数 attrs 可以获取在 xml 中添加的属性的值。系统已经给我们定义了以下属性,可以在 sd...
本文转载自 https://cloud.tencent.com/developer/article/1614039[https://cloud.tencent.com/dev...
Android 开发中,当需要获取资源文件 ID 的时候,会按照下面的方式获取:R.drawable.ic_closeR.color.black 但是如果有一组相似的图片,名...
Canvas.drawText 只能绘制一行文字,文字多了会超出屏幕之外。要想绘制多行文字,可以使用 StaticLayout。
说起 saveLayer() & restoreToCount(),不得不先说 save() & restore()。关于 save() 和 restore 的可以参考 ht...
save:保存画布的状态 restore:将画布保存到之前保存的状态 这有什么用呢?当调用 save 保存了画布的状态之后,就可以对画布为所欲为了(调用 Canvas 的平移...
Anaconda 介绍 Anaconda 指的是一个开源的 Python 发行版本,其包含了 Python、conda 等 180 多个科学包及其依赖项。这个定义可能有点抽象...
native 的崩溃相比于 java 很难看懂,对于排查问题很不利。不过我们可以通过 NDK 中的工具 ndk-stack 来还原堆栈信息。 先制造一个异常: 运行之后出现崩...
静态注册 静态注册的格式如下:extern "C" JNIEXPORT [JNI参数类型] JNICALL Java_[包名]_[类名]_[方法名](JNIEnv* env,...
常用方法 使用例 1 - C++ 中抛出异常 使用例 2 - C++ 捕获 Java 中的异常