移动开发

关于安卓毛玻璃实现(二)动态毛玻璃recyclerview

上文说到,一个单独的页面实现毛玻璃 博客地址 但是目前,这种方案放在了recyclerview中,就会有性能问题了,为什么?recyclerview因为其加载数据的缓存性质,会同时加载多个view,如果所有view都在做动态毛玻璃,那性能开销可想而知。 !!!代码地址在文末!!! 环境: 1、win10 androidstudio4.4.0 2、jdk 1.8 场景: recyclerview使用

Android 蓝牙串口通信Demo

关于如何设置笔记本电脑的蓝牙 串口并且和手机蓝牙配对,以及pc串口调试工具的下载请看这篇博客: 通过上面这篇博客的操作再进入app就能实现本Demo 和 pc串口调试工具的数据互传了。(如果在app中总是显示连接出错,多半是因为蓝牙没有配对好,关闭蓝牙再多配对几次) 效果

iOS动画 —— UIBezierPath

简介 UIBezierPath类创建基于矢量的路径,例如椭圆或者矩形,或者有多个直线和曲线段组成的形状。 UIBezierPath是UIKit中的一个关于图形绘制的类,是通过Quartz 2D也就是CG(Core Graphics)CGPathRef的封装得到的,从高级特性支持来看不及CG。 使用UIBezierPath,你只能在当前图形上下文中绘制。 CGContextRef即图形上下

Android学习总结之Room篇

一、Room 框架基础1. 实体类(Entity)实体类用于描述数据库表的结构。通过使用 @Entity 注解,可以将一个 Java 类映射到数据库中的一张表。例如,以下是一个简单的 User 实体类:import androidx.room.Entity; import androidx.room.PrimaryKey

浅谈 RunLoop

什么是RunLoop     RunLoop 是事件接收和分发机制的一个实现,是线程相关的基础框架的一部分,一个 RunLoop 就是一个事件处理的循环,用来不停的调度工作以及处理输入事件。一般来讲,一个线程一次只能执行一个任务,执行完成后线程就会退出。如果我们需要一个机制,让线程能随时处理事件但并不退出,通常的代码逻辑是这样的: do{ //... }while(//...)     

自己写个App 启动任务框架也不过如此!

作者:王晨彦 一、前言 我们在开发应用的时候,一般都会引入 SDK,而大部分 SDK 都要求我们在 Application 中初始化,当我们引入的 SDK 越来越多,就会出现 Application 越来越长,如果 SDK 的初始化任务相互依赖,还要处理很多条件判断,这时,如果再来个异步初始化,相信大家都会崩溃。 有人可能会说,我都在主线程按顺序初始化不就行了,当然行,只要老板不来找你麻烦。

Flutter 学习 之 主题设置 ThemeData

基于ThemeData 实现主题切换 1. 实现可以亮暗主题切换2. 实现可以颜色主题的切换3.当主题为白色的时候替换一个其他主颜色4.当颜色为浅色时候需要做反色处理 演示效果 a5tnj-j7y0p.gif 一. 修改Main.dark 文件 //多Provider 当前只用了一个 为以后打基础 return MultiProvider( provi

一款将打包后的Chrome插件自动化加载到浏览器的webpack插件

一、简述 今天向大家介绍一款可以将build打包后的chrome扩展程序自动化加载到chrome浏览器中的webpack插件,该webpack插件是我自己开发的,已经发布到了npm上,安装方式如下: npm i auto-load-chrome-ext-webpack-plugin 二、解决的痛点 前段时间在研究chrome插件开发过程中,由于我项目中使用了react进行页面开发,