Kotlin Flow的简单使用(含StateFlow)

kotlin flow介绍flow基于kotlin携程;使用方式类似于RxJava但更简单;flow可以转换成LiveData;结合协程的作用域,避免内存泄漏...

萌萌の初音 发布于 2022-07-05

SavedStateHandle的简单使用

SavedStateHandle简介SavedStateHandle搭配ViewModel作为状态保存使用,ViewModel虽然也保存了状态,但仅限于屏幕旋转等资源配置变更导致Activity和Fragment销毁,如果是系统kill导致的销毁无法还原,SavedStateHandle就可以对V

萌萌の初音 发布于 2022-05-19

Jetpack paging3的使用

1. paging3相关依赖的引入:ext { room_version = "2.4.2" paging_version = "3.1.1" lifecycle_version = "2.4.1"}dependencie

萌萌の初音 发布于 2022-05-16

SurfaceView的简单实现

SurfaceView介绍在Android中更新UI必须保证操作都在主线程中,如果画面经常刷新变动就会导致主线程阻塞,影响用户体验或更严重的ANR,这时就需要使用SurfaceView进行处理。SurfaceView可以另起一个线程单独进行画面更新的,通过对cavans进行绘制来实现画面显示,在重复

萌萌の初音 发布于 2022-05-13

Android10外部储存权限补充

前情提要:在Android 10以上文件读取受限的解决方案文章中,通过Uri等形式进行文件读写,但对使用Environment类公共目录的读写不是很友好,并且第三方需要对我们的文件读取造成一定的麻烦。方案一:Environment实现在AndroidManifest.xml中加入<uses-p

萌萌の初音 发布于 2022-04-26

Flutter插件实现AndroidView

使用flutter难免会借助原生view实现相关功能,直接在项目的FlutterActivity中实现不利于管理和组件化的实现,以下通过flutter plugin进行实现进行记录。1. 新建flutter plugin项目以android studio为例,new -> new flutte

萌萌の初音 发布于 2022-04-26

Compose DropdownMenu下拉弹出框组件的简单使用

随着JetPack Compose组件版本升级至1.1.0版本,便开始对compose进行初步的学习,由于有flutter的开发经验,很多控件都能马上上手,如Column、Row、Scaffold等,其中也有很多不同的控件需要进行学习。现在开始对DropdownMenu 下拉组件进行学习。与flut

萌萌の初音 发布于 2022-03-13

Kotlin的Lazy与Lateinit的理解

在Android开发中,需要进行大量的变量声明与初始化,有时候我们并不需要立即初始化,在java开发中就会造成项目出现null指针异常导致项目崩溃的情况,而kotlin的null安全解决了大部分因null指针异常导致崩溃的情况。因kotlin空安全检查严格,所以变量用以下方式声明就会出错

萌萌の初音 发布于 2021-12-02

zxing二维码扫描CaptureActivity抽象类封装

接入zxing二维码开源项目,直接使用写好的CaptureActivity需要进行修改,使用不便,将CaptureActivity修改为抽象类方便接入实现定制化的需求。效果图:直接贴CaptureActivity代码:package com.google.zxing.activity;import

萌萌の初音 发布于 2021-11-02