- 博客(99)
- 资源 (2)
- 收藏
- 关注
原创 Android刮刮卡自定义控件
*** 描述:* 作者: shawn* 时间: 2024/5/2711:20*//*** 绘制线条的画笔*//*** 遮层画笔*//*** 最下面画笔*//*** mCanvas绘制内容在其上*//*** 记录用户绘制的Path*//*** 内存中创建的Canvas*/init();/*** 初始化canvas的绘制用的画笔*/@Overrideif (!
2024-05-27 14:19:04 401
原创 BigDecimal精度丢失问题
此构造方法的结果有一定的不可预知性。这样,传入到构造方法的值不会正好等于 0.1(虽然表面上等于该值)另一方面,String 构造方法是完全可预知的:写入 new BigDecimal("0.1") 将创建一个 BigDecimal,它正好 等于预期的 0.1。因此,比较而言,通常建议优先使用 String 构造方法。使用BigDecimal的构造函数进行封装Double、Float型数值的时候,实际创建的值与我们期望的值会出现误差,因此在进行运算时会出现精度的丢失。
2024-04-19 18:03:07 214
原创 activity-alias 解决微信登录失败
微信登录需要指定一个实现微信登录接口的acitivty,这个activity的包路径需要与应用的包名一致。包名中包含short关键字导致IDE不识别这种不合法的名字。那就和微信登录的方式起了冲突。使用activity-alias解决此问题,重新给wxAcitivty指定一个name。
2024-04-19 17:01:45 235
原创 如何修改flutter项目中的minSdkVersion
对于minSdkVersion,相信大家都很熟悉。对于如何修改它,如果是android 项目,众所周知是在app级别的build.gradle中修改,一目了然。但是对于在flutter项目,修改minSdkVersion,确有点麻烦。
2024-03-20 14:35:54 1647
原创 动态数据库工具:database inspect
如何开启database inspect?之前查到的资料,说的是在菜单栏。上面是我当时使用的版本。
2024-03-08 10:33:44 521
原创 RecyclerView 局部频繁刷新影响点击事件处理
使用notifyItemChanged(int position,@Nullable Object palload)方法,进行局部刷新处理。某个item上有个textview用来显示时间,时间的值从外部传入,每100毫秒就刷新一次。
2024-02-28 14:50:47 482
原创 ConstraintLayout 流式布局:Flow的动态加载
主要的内容就是这两句:constraintLayout.addView(customView,i)和flow.addView(customView)废话不多说,直接上菜,内容也比较简单。第二部分,代码的方式,动态添加。首先,第一部分:布局。
2024-02-27 12:12:56 890
原创 flutter GridView控件实践
给gridView设置:padding: EdgeInsets.zero,顶部有一个比较大的padding。
2024-02-01 14:47:59 688
原创 flutter 设置图片与文字的基线对齐
很自然的就想到用Row实现,然后先image再放一个text,单实际的效果是,文字与图片中线垂直对齐,因为row中的 crossAxisAlignment参数默认设置的居中,所以刚开始想到的就是修改textBaseline,因为不知道所应对的基线应该是谁,所以设置此属性也是没用的。也就是说需要结合verticalDirection属性,此属性有两个值:up和down,那顾名思义,在这里我们就应该用down属性,而默认值就是down。在开发中,我当时遇到比较简单的布局,首先是左边图标右边文字,如下图所示,
2024-01-31 18:18:55 769
原创 Flutter Text文字下方出现黄色双下划线
在Flutter中,Text组件是属于Material风格的,这就要求我们的根组件最好也是Material风格的,否则UI展示可能会有一些问题。刚刚提到的启动页,根组件直接使用的层叠布局Stack,而Stack就不属于Material风格,当Stack内部嵌套Text的时候就会出现文字下方带有两条黄色下划线的现象。
2024-01-26 16:44:57 2228
原创 flutter记录问题:No MaterialLocalizations found - MyApp widgets require MaterialLocalizations to be provi
要引入MaterialLocalizations,可以在应用程序的根目录中使用MaterialApp来自动包含它们,或者添加一个带有MaterialLocalizations委托的本地化小部件。利用Fluter Dev Tools 分析当前视图,再看错误提示中提到,需要。以androidstudio 为例,然后会在浏览器中打开一个页面。根目录中使用MaterialApp包裹组件。但是当点击按钮之后,出现了上面的错误。点击按钮,dialog正常展示!,恍然大悟,随改动进行尝试。
2024-01-24 14:31:32 814
原创 如何修改flutter的minSdkVersion版本?
从flutter的sdk入手。在使用第三方插件的时候,插件对最低的 minSdkVersion版本是有要求的,你比如。这个时候我们需要修改下项目的minSdkVersion,那如何修改呢?
2024-01-23 18:26:27 1709
原创 Dart中的结构:Records
版本说明:记录要求语言版本至少为3.0Records是一种匿名的、不可变的聚合类型。与其他集合类型一样,它们允许您将多个对象捆绑到单个对象中。与其他集合类型不同,Records是固定大小的、异构的和类型化的Records是真实的价值;您可以将它们存储在变量中,嵌套它们,将它们传递给函数或从函数传递,并将它们存储在列表、映射和集合等数据结构中。Records类型注释是用逗号分隔的类型列表,它们被括在圆括号中。您可以使用Records类型注释来定义返回类型和参数类型。Records。
2024-01-18 17:02:52 495
原创 Kotlin 协程 asyn和launch简单使用
对象,其中包含了字符串 "Hello, World!适用于启动无需返回值的后台任务,而。启动了一个延迟任务,并返回了一个。适用于启动需要返回结果的后台任务。启动了一个简单的延迟任务,而。在 Kotlin 协程中,
2024-01-15 19:12:36 1058
原创 dart 扩展方法,实现类似kotlin扩展函数
需要注意的是,扩展方法仅能访问类的公共成员,并且它们不能被重载。虽然Dart的扩展方法在语法上与Kotlin的扩展函数不完全相同,但它们提供了类似的功能,允许在不修改原始类定义的情况下向类添加新的方法。在Dart语言中,虽然没有像Kotlin中的扩展函数(extension functions)的概念,但Dart提供了类似的功能,称为扩展方法(extension methods)。扩展方法允许你向现有的类添加新的方法,而无需修改这些类的源代码。这使得你可以在不继承或修改类的情况下,为其添加新的功能。
2024-01-15 11:28:21 632
原创 Dart 空感知操作符:??
代码可以正常执行,但是报了如下错误:?因为空感知操作符??通常用于左侧操作数可能为空的情况。但是,在上面的代码中,str1被声明为不可空的String类型,并且它不能为空。因此,在这种上下文中使用空感知运算符是不必要的,并且可能导致混淆。
2024-01-12 15:06:23 561
原创 Fluter编译问题:Could not find io.flutter:arm64_v8a_debug
找到android目录下的bulid.gradle,附完整build.gradle。
2024-01-10 11:19:07 589
原创 adb命令 对android的使用
例子:adb shell am start -W com.test.test/com.test.activity.ActivityStart。查看应用启动时间:adb shell am start -W 包名/启动的activity。查看已安装的包名:adb shell pm list packages -3。
2024-01-05 10:13:26 385
原创 XOR运算文件加密示例
XOR加密是一种非常简单的加密技术属于对称加密(相同的密钥进行加密和解密),不提供机密性或完整性验证因此不适用于高度敏感的数据,容易受到各种攻击,包括已知明文攻击。在实际应用中,应该使用更强大和安全的加密算法,如AES或RSA。通过xor计算,将文件加密成不可读文件,除非使用逆运算,否则无法修复。对加密代码进行 xor 逆运算,即可得到正常可读文件,文件无任何损失。
2024-01-04 15:39:34 413
原创 Android studio 连接夜神模拟器
windows环境,win+r打开命令窗口,输入cmd,打开cmd窗口。按照上面的提示,键入:.\nox_adb.exe 依然无法执行。进入某个文件夹:cd 文件夹名称。查看当前路径的文件:dir。
2023-12-25 17:03:27 681
原创 implementation和api的区别是什么
平时在做开发的时候,各种依赖三方库。这里随便举个例子。今天在开发的时候,遇到如下错误:当时查了好多资料,有说依赖缺失的,有说依赖冲突的,有说清理缓存重新build的,各种姿势我都尝试了,无果之后,请教了同事。同事说,把引入依赖从换成试试,结果就可以了。借此机会正好了解下这两个api的区别。
2023-11-30 10:09:48 732
原创 协程之实现一些“骚”操作
场景一:如果有一个函数,它的返回值需要等到多个耗时的异步任务都执行完毕返回之后,组合所有任务的返回值作为 最终返回值。最后,它将所有任务的结果组合成一个列表并返回。启动了这些异步任务,并使用。启动协程来运行整个示例。
2023-11-10 14:27:26 76
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人