移动开发

TreeUtils工具类一行代码实现列表转树 实战Java8 三级菜单 三级分类 附视频

一、序言 在日常一线开发过程中,总有列表转树的需求,几乎是项目的标配,比方说做多级菜单、多级目录、多级分类等,有没有一种通用且跨项目的解决方式呢?帮助广大技术朋友给业务瘦身,提高开发效率。 本文将基于Java8的Lambda 表达式和Stream等知识,使用TreeUtils工具类实现一行代码完成列表转树这一通用型需求。本文有配套视频,传送门直达。 二、实战编码 1、引入坐标 本坐标地址包含Tre

Android-推荐一个TextView效果开源库( SuperTextView)

图片来源网络,入侵必删 我最近发现一个能够实现多种效果的TextView开源库,这篇博客分享给看文章的小伙伴,希望能帮你们提高开发效率以及提升自己App的用户体验感。 SuperTextView SuperTextView一个简单的控件元素,但却不仅仅是一个控件。它生而灵动多变,强大的内嵌逻辑,为你持续提供丰富多彩却异常简单的开发支持。他的特性: 为 View 设置圆角 支持单独控制

FFmpeg入门 - 视频播放

系列文章: FFmpeg入门 - 视频播放 FFmpeg入门 - rtmp推流 FFmpeg入门 - Android移植 FFmpeg入门 - 格式转换 音视频最好从能够直接看到东西,也更加贴近用户的播放开始学起. 音视频编解码基础 我们可以通过http、rtmp或者本地的视频文件去播放视频。这里的"视频"实际上指的是mp4、avi这种既有音频也有视频的文件格式。 这样的视频文件可能会有多条轨

flutter面试题

一、flutter与原生通信,三种通道的区别 1.1 MethodChannel Flutter与Native端相互调用,调用后返回结果 可以Native端主动调用,也可以Flutter主动调用,属于双向通信 此种方式最为常见,Native端调用需要在主线程中执行 1.2 BasicMessageChannel 用于使用指定的编解码器对消息进行编码和解码 属于双向通信,可以以Native端主动调用

macOS版本微信 4.0 之后,双开策略

从 macOS 版本微信 3.0 升级到 4.0 之后,之前的双开策略实效了。当然期待微信能够让之前方法回归。这是最理想的。咱也该自己动手丰衣足食 ~~~第一步创建微信的「分身」sudo cp -R /Applications/WeChat.app /Applications/WeChat2.app会要求输入密码,直接输入即可。

js中?.、??、??=的用法

1、可选链?.  javascript中如果一个值为null、undefined,而直接访问。。。 会报 Uncaught TypeError: Cannot read properties of undefined 异常错误。 而在真实的项目中是会出现这种情况,有这个值就读这个值,没有这个值也不会报错。 可能有的小伙伴会说用三木运算符、或者if判断,但是这种也是可以的,但是在特

如何在Android系统中显示和管理通知

通常,在 Android 应用程序中,通知用于与用户就应用程序更新和提醒进行沟通。通过这种方式,当用户在应用的 UI 之外并允许快速交互(如删除电子邮件或回复消息)时,它们往往非常有用。 项目设置 首先,打开 Android Studio 并创建一个新项目,或者直接打开一个现有项目以向其添加通知功能。 无需特殊依赖项即可处理通知,只需核心 SDK 即可。 通知通道 通知通道是一种将应用程序发送的通

Android10.0 StatusBar之状态栏

学习笔记:参考资源 一、StatusBar简介 Statusbar包含导航栏(NavigationBar, 位于左侧、右侧或者底部)和状态栏(StatusBar, 位于顶部, 可下拉)两个部分。 Statu

toxiclibs中的粒子和弹簧

书名:代码本色:用编程模拟自然系统 作者:Daniel Shiffman 译者:周晗彬 ISBN:978-7-115-36947-5 目录 5.16 toxiclibs中的粒子和弹簧 1、粒子 在Box2D的例子中,我们创建了自己的类(比如Particle类),并在其中加入了一个Box2D物体对象变量。 class Particle { Body body; 这样的实现方式显得