
笔记
有趣的灵魂222斤
我独处时最轻松,因为我不觉得自己乏味,即使乏味,也自己承受,不累及他人,无需感到不安。
展开
-
Android获取当前窗口的大小(分屏模式下也能获取到精确的值)(API 30 +)
Android获取当前窗口的大小(分屏模式下也能获取到精确的值)(API 30 +)fun Activity.getCurrentWindowSize(): Rect? { return if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) { windowManager.currentWindowMetrics.bounds } else null }...原创 2022-03-05 16:53:04 · 3434 阅读 · 0 评论 -
Android复制内容到剪切板上
Android复制内容到剪切板上fun Context.copyToClipboard(label: String, data: String) { getSystemService<ClipboardManager>()?.setPrimaryClip(ClipData.newPlainText(label, data))}原创 2022-03-05 16:48:14 · 1465 阅读 · 0 评论 -
Android判断当前是不是黑色主题
Android判断当前是不是黑色主题inline val Context.isDarkTheme: Boolean get() = (resources.configuration.uiMode and Configuration.UI_MODE_NIGHT_MASK) == Configuration.UI_MODE_NIGHT_YES原创 2022-03-05 16:45:43 · 1214 阅读 · 0 评论 -
Android判断用户是否已完成设置向导(开机向导)
Android判断用户是否已完成设置向导(开机向导)inline val Context.isDeviceProvisioned: Boolean get() = Settings.Global.getInt(contentResolver, Settings.Global.DEVICE_PROVISIONED, 0) == 1原创 2022-03-05 16:44:22 · 2018 阅读 · 0 评论 -
自定义`RecyclerView`的`ItemAnimator`子项动画(一)
研究一下一个RecyclerView子项动画库原创 2022-03-05 16:37:27 · 1275 阅读 · 0 评论 -
`Android`优雅的封装`ActivityResultLauncher`启动活动和请求权限,外加处理意外被`kill`情况
Android优雅的封装ActivityResultLauncher启动活动和请求权限一般我们在请求权限或者处理Activity返回结果的时候都会使用Activity#onActivityResult()和Activity#onRequestPermissionResult()这俩个方法,如今谷歌已经提供了新的请求方法:https://developer.android.com/training/permissions/requesting?hl=zh-cn。这篇文章是解决什么的?我想把每个处理结原创 2022-03-05 16:25:40 · 7556 阅读 · 0 评论 -
Kotlin解决烦人的?.
internal inline fun <T, R> T?.runIfNotNull(block: T.() -> R): R? = this?.block()使用T.runIfNotNull{ }代替 ?.()any.runIfNotNull { }any?.apply{ }原创 2021-12-15 21:32:31 · 2305 阅读 · 0 评论 -
Android设备显示相关帮助类
public class DisplayHelper { /** * 屏幕密度,系统源码注释不推荐使用 */ public static final float DENSITY = Resources.getSystem() .getDisplayMetrics().density; /** * 获取 DisplayMetrics * * @return */ public s原创 2021-10-14 23:11:32 · 344 阅读 · 0 评论 -
Android 颜色帮助类
public class ColorHelper { public static int setColorAlpha(@ColorInt int color, float alpha) { return setColorAlpha(color, alpha, true); } /** * 设置颜色的alpha值 * * @param color 需要被设置的颜色值 * @param alpha 取值为[0,1],原创 2021-10-14 22:59:26 · 137 阅读 · 0 评论 -
View Alpha帮助类
public class AlphaViewHelper { private WeakReference<View> mTarget; /** * 设置是否要在 press 时改变透明度 */ private boolean mChangeAlphaWhenPress = true; /** * 设置是否要在 disabled 时改变透明度 */ private boolean mChangeAlphaWhen原创 2021-10-14 22:51:04 · 188 阅读 · 0 评论 -
创建一个缩略图Bitmap(使用PixelCopy)
public class UI { private static final Canvas sCanvas = new Canvas(); public static Bitmap createBitmapFromView(View view) { return createBitmapFromView(view, 1f); } /** * 从一个view创建Bitmap。 * 注意点:绘制之前要清掉 View 的焦点,因为焦原创 2021-10-13 22:20:37 · 1878 阅读 · 0 评论