自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(170)
  • 资源 (5)
  • 收藏
  • 关注

原创 仿微信图片编辑 全网功能最全的图片编辑器

序言最近写一个图片编辑器,仿造的微信的图片编辑,以下加粗的功能是微信没有的。这个项目可以说是目前编辑功能最多的编辑器。而且功能都支持定制。绘制方框绘制圆形绘制文字绘制箭头涂鸦绘制马赛克图片剪裁使用1.可以定制需要的功能,不需要的功能会自动隐藏。以下是定义的在TRSPictureEditor的常量。 public static final int BOX_ENABLE = 0x00000001;//方形选择框 public static final int CIRC

2021-04-30 00:42:50 2436 4

原创 在VIVO 手机上安装apk,实现自动点击继续安装

最近换了个测试机,用了VIVO。但是每次安装的时候都必须点击一次继续安装。验证影响效率。为了解决这个问题做了一些研究。

2024-05-22 17:57:11 543

原创 使用ImageView实现Drawable

有时候在使用drawable绘制图片的时候,要实现类似ImageView中各种 ScaleType的效果。但是每种ScaleType还得自己去实现具体的算法。有点麻烦,后来我想能不能直接复用ImageView的算法。于是有了以下这个类。这个类,亲测可用。记录一下,以备后面使用。

2024-05-20 13:56:54 156

原创 一行代码实现vip标志的显示

在项目中,后期添加了一种用户类型。需要再用户头像右下角显示一个vip的标志。问题是只要有头像的地方都要显示。而有头像的地方很多,设置到的接口也很多。后面考虑通过一个工具类,将这个功能外挂到原来的业务需要的地方。

2024-05-16 10:01:12 306

原创 使用自定义注解处理器,自动收集类信息

在开发过程有些时候我们会需要收集一些类信息。比如要知道某个子类下的所有实现类。可以通过反射的方式实现。但是这种方法有性能问题,因为在运行时,所有类都会包含在dex文件中。这个文件中的类可能有几十万个。而且在实际开发中会发现,新写出来的类,可能没有打包进apk,通过反射无法及时的发现。于是想通过自定义注解处理器来实现。

2024-04-26 16:49:28 374 1

原创 使用JS代理 实现大对象的功能拆解

【代码】JS代理的实现。

2024-04-24 16:27:04 437 6

原创 通过js实现图片转文字

在Node.js中实现图片文字识别,我们需要使用OCR(Optical Character Recognition)技术。OCR技术可以将图片中的文字转换成可编辑的文本。在Node.js中,我们可以使用一些第三方库来实现这个功能。我们将使用两个库:Tesseract OCR和sharp。Tesseract OCR是一个流行的OCR引擎,它可以将图片中的文字转换成文本。sharp是一个用于处理图片的Node.js库,它可以用于调整图片大小、裁剪、格式转换等操作。首先,我们需要安装这两个库。

2024-04-17 10:24:12 1002

原创 使用js批量下载图片,并转为pdf 最后合并 转word 可以复制内容

我们的js代码也会按照0.jpg,1.jpg,2.jpg…的顺序生成,0.pdf,1.pdf,2.pdf…最后合并为merge.pdf。需要把上面的jpg2pdf.js保存在node 保存包的地方。也就是我们在那个目录执行。第一个参数是图片保存的地方,如果用我上面的js保存的图片,图片将以下面的方式保存。可以保存为jpg2pdf.js。生成的pdf(背景色为pdf软件自带的)文件夹,里面有我们安装的第三方包。这里借助的是nodejs。合并的js,下面有两个参数。方法第二个参数指定的地方。

2024-04-16 18:22:31 400

原创 【转】关于vsCode创建后,不显示NPM脚本解决

刚刚使用vue ui新建了个vue项目,打开vs-code发现,无论怎么设置都找不到NPM脚本显示,苦恼了很久,突然发现!打开了package-lock.json,然后立马把vs-code关闭,重新打开,就显示了npm脚本,直呼神奇!

2024-04-15 09:52:57 188

原创 网络图片的适配

之前用了屏幕适配方案,将屏幕适配为375dp。现在想的是,将图片也适配一样。也就是服务器返回的图片如果是375px就全屏显示。

2024-03-14 18:44:30 208

原创 使用Javassist 在android运行时生成类

最近在写框架,有一个需求就是动态的生成一个类,然后查阅了相关文献,发现在android中动态生成一个类还挺麻烦。因次把一些内容分享出来,帮助大家少走弯路。

2024-03-04 15:18:52 1195

原创 自动暂停和恢复网页中的视频播放

实现起来不是很难,主要是把各个功能疏解到单独的类中。保证每个类的职责单一,提高逻辑的清晰性。增加维护的便利性。通过观察者模式还可以为后面的业务拓展提供支撑,增加了系统的弹性。这也是提高自己代码的设计性的尝试。

2024-02-06 10:39:29 669

原创 反编译AAR 实现Codelocator不报错 保留跳转到XML功能

之前写过一篇文章就是说怎么避免codelocator不报错。参考但是上面的解决方案有个问题。就是配置以后,跳转到XML功能无法使用。也就是下面这个功能。这个功能还挺好用的,我想保留,但是不想报错。于是研究怎么达到这种效果。

2024-01-31 13:47:09 748

原创 CodeLocator 避免控制台弹出一堆错误日志

使用codeLocator 插件 控制台经常打印出一堆的错误日志。和项目本身无关。影响了我们排查错误的效率。

2024-01-30 16:16:24 192

原创 自适应大小的TextView

有些时候,一个控件文字内容太多,需要其自动缩小字体。开发了这个自定义控件。

2024-01-25 13:55:36 407

原创 android 扫描某个包下的所有类

如果在用Android Studio开发过程中,如果新增了类,扫描不到。只能把APP卸载了,才能扫描到。可能是Instance Run 的影响。后面研究一下这篇文章,看看能不能解决。

2024-01-22 17:20:54 681

原创 TagTextView 行内标签TextView

效果如下,可以解析xml中配置的drawableStart ,然后将这个drawable显示在一行内。下一个开始。从这个drawable开始。

2024-01-09 16:10:52 399

原创 MaxLengthTextView 如果内容超过xml中maxLength属性定义的文字数量时,会被添加省略号

【代码】MaxLengthTextView 如果内容超过xml中maxLength属性定义的文字数量时,会被添加省略号。

2024-01-09 15:27:49 367

原创 解决 GSYVideoPlayer 连续切换视频 出现黑屏只有声音没有画面的问题

如果这个播放器用来recycleView中,实现类似抖音的效果,会发现刷了一段时间,会出现只有声音没有画面的情况。这个时候是因为surface没有创建(具体原因未知)。中的方法没有回调。其他人也遇到过。

2023-12-29 18:04:51 899

原创 优化GSYVideoPlayer进度条跳动的问题

使用GSYVideoPlayer进行视频播放,在播放过程中点击进度条切换进度。视频会回退一下,然后才跳到指定的进度。如果视频比较短,比如10多秒,基本上无法实现进度切换。这是框架本身的问题。

2023-12-29 10:40:16 548

原创 不受父容器大小约束的TextView

* Desc:这是一种没有被父类的尺寸约束大小的TextView,内容有多少就显示多少。* 主要目的是可以将显示的内容超过父容器的大小。必须将配置父容器的clipChildren为false。才能看到效果。父控件的大小是均分的,而显示数量有可能超过父控件。*

2023-12-22 14:47:37 77

原创 解决Android软键盘在全屏下设置adjustResize无效的问题

在非全屏模式(即状态栏不透明)下,将activity的windowSoftInputMode的属性设置为:adjustResize。同时在View的onSizeChanged(int w, int h, int oldw, int oldh)里可以得到变化后的尺寸,然后根据前后变化的结果来计算屏幕需要移动的距离。在键盘显示时它未将Activity的Screen向上推动,所以你Activity的view的根树的尺寸是没有变化的。在这种情况下,你也就无法得知键盘的尺寸,对根view的作相应的推移。

2023-11-30 17:15:42 648

原创 实现GridLayoutManager 平均间距的ItemDecoration

【代码】实现GridLayoutManager 平均间距的ItemDecoration。

2023-11-23 17:56:40 298

原创 解决gradle报错:Unable to make field private final java.lang.String java.io.File.path accessible:

将gradle.properties中的。

2023-10-23 11:17:17 661

原创 可以无限滚动,支持自动滚动,设置滚动一屏幕时间的LayoutManger

【代码】可以无限滚动,支持自动滚动,设置滚动一屏幕时间的LayoutManger。

2023-08-25 14:00:04 205

原创 卡片布局 可左右上删除,可向下拉出上一个 支持复用

支持左右上 三个方向删除内容,支持下拉显示上一个。支持adapter 支持复用。

2023-07-31 11:37:54 97

原创 显示Gif菜单

最近研究在底部菜单中加入gif播放。这样显得高级一些。研究了一些技术方案,现在写篇博客,沉淀一下。

2023-07-07 18:10:13 189

原创 实现联动滚动

在垂直滑动的过程中可以横向滚动内容。

2023-06-29 16:36:31 216

原创 android 圆角+水波纹+渐变+阴影动画的按钮

对应的xml部分。

2023-06-09 14:51:30 409

原创 BottomSheetDialog 清除默认样式

BottomSheetDialog 默认样式有各种边距。于是选了一个简单的dialog。记录一下。怎么去除默认样式。达到设计图的标准。

2023-06-08 10:28:29 72

原创 圆角图片控件

可以实现圆角的图片控件。

2023-06-07 11:39:00 178

原创 程序员浪漫起来 做一个心形layout

最新烂漫心饱满,于是写了个心形控件。可以将一切内容约束成心形,并且支持两种心形,使用起来很简单,就当成FrameLayout就行了。让一切都浪漫起来。

2023-06-06 15:23:50 59

原创 生成圆点二维码工具

最近项目上需要生成圆点二维码图片的功能就开发了一个工具用来生成圆点二维码。支持不同大小,不同颜色。

2023-05-31 13:52:29 771 1

原创 apk自动签名工具

因为360加固,自动签名需要开通VIP,每次加固完了都得手动签名。所以写了个工具。实现通过配置文件配置,拖拽APK自动签名。支持:V1 V2 V3 V4 签名。通过分析清单文件,自动选择版本。

2023-05-17 17:31:38 2748 7

原创 通过bat 最小化运行jar包

start /min “cmd” 为固定内容,后面为要传入cmd中的参数。

2023-05-17 16:13:05 201

原创 100多行实现嵌套滚动

基于5.1系统的嵌套滚动机制实现。可以嵌套滚动,惯性滑动。

2023-05-16 17:56:47 144 1

原创 实现微信打开App功能

需要在包名为(applicationId)+wxapi的包下加入以上几个类。

2023-05-12 11:00:55 881

原创 解决BaseBottomSheetDialog和RecycleView滑动冲突

BaseBottomSheetDialog中包含RecycleView时,向下滑动时,优先响应的是BaseBottomSheetDialog。RecycleView无法滚动。只需要在其最外部使用以下自定义控件即可。

2023-05-08 22:45:11 548

原创 分享本地图片到钉钉 有时成功有时失败

钉钉对本地图片的大小有限制,最大500KB,超过以后就会失败。分享本地图片到其他平台,要放置在公共目录下。否则在高版本的android系统中也会失败。

2023-04-27 13:47:10 253

原创 解决 腾讯X5内核 在 ViewPager2 嵌套滚动中横向滑动冲突 ,AppBarLayout中纵向滚动冲突

如果WebView在ViewPager2中。如果网页中有banner之类的可以横向滚动的控件,会和ViewPager2的横向滚动发生冲突。需要处理。

2023-04-23 16:09:02 598 1

AppActivityName.jar

用来获取当前activity的名称,和其中包含的fragment的工具。使用java 8编译。需要系统环境变量中包含adb

2021-11-11

chkbugreport-0.5-216.jar

小米错误日志查看工具

2021-09-29

simpleUMLCE_8205.jar

simpleUMLCE_8205.jar

2021-06-02

OrderLayoutDemo.rar

可以设置优先级的layout ,继承自LinerLayout,支持水平方向的排列。当空间不足时支持两种压缩模式。一种是直接隐藏,一种是用省略号代替。支持省略号显示最小字数设置,到正文小于该字数时,控件自动隐藏

2020-12-17

使用Glide4.0 实现点赞动画的demo

Glide实现点赞动画 1. 怎么动态的添加一个动画到指定的View 2. 怎么实现GIF只播放一次 3. 这么监听GIF播放完毕的时间(因为需要在结束时播放消失动画)

2018-06-14

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除