自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(90)
  • 资源 (1)
  • 问答 (6)
  • 收藏
  • 关注

原创 Android FTPServer监听摄像机文件上传处理

Android FTPServer开启监听摄像机拍照图片上传

2024-03-07 18:11:31 962

原创 ActivityResultContracts.OpenMultipleDocuments()返回的文件绝对路径解析方法

*** 根据Uri获取文件绝对路径,解决Android4.4以上版本Uri转换 兼容Android 10*///4.4以下的版本//大于4.4,小于10// MediaStore (and general) 大于等于10//content 类型}else {// Fileif (null!

2024-02-26 17:15:31 814

原创 Recyclerview单条拖拽ItemTouchHelper仿微信下拉小程序删除

我这里有两个Recyclerview都会进行删除操作,这里不仅需要viewHolder.itemView.getBottom()判断控件距离Recyclerview的顶部距离,也需要当前Recyclerview距离总布局顶部的距离,其余的都好理解了,如果删除就调用接口返回就是了。在onMove中对加号进行判断,如果是自己本地的图片的时候是不能进行互换位置的,这里的判断可以根据自己的情况进行相关的判断,不一定按照我这个来。//recyclerview 距离顶部距离 recyclerView.getY()

2023-08-15 11:56:16 228

原创 List用Stream流操作ID例子

用流操作的确简介很多。

2023-07-10 14:49:07 1025

原创 Android shape定义背景带阴影

多盖几层,也就出来阴影了,越往上面这层颜色也就越深,也就是颜色从0a变到2d,最后一个shape也就是最上面这层的颜色,这里用gradient做的从上到下的渐变色。原理其实就是一层一层往上盖,padding就是里面的小抽屉比外面的大抽屉从left,right,top,bottom上分别小多少像素。

2023-06-27 16:51:41 1454

原创 ConstraintLayout中Viewpager高度自适应layout_constraintTop_toBottomOf问题

ConstraintLayout中Viewpager高度自适应layout_constraintTop_toBottomOf问题

2023-04-27 17:49:10 1126

原创 room数据库使用以及增加表的使用

Dao/*** 根据id查询保存的广告* @param moduleId 模块id* @return*//*** 删除本地广告* @param myAdvertBean 广告*/@Delete/*** 广告保存本地* @param myAdvertBean 广告*//*** 更新本地广告信息* @param myAdvertBean 广告*/@Update。

2023-03-28 10:34:31 1256

原创 TextView用SpannableStringBuilder加全文以及不同点击事件

/这个监听的回调是异步的,在监听完以后一定要把绘制监听移除,不然这个会一直回调,导致界面错乱。.append("全文").append("全文")//减6是为了加上...跟全文。//55是左右的margin。

2023-03-17 09:48:56 654

原创 WebView.pauseTimers遇到的问题使用

获取webview时webView.onResume();webView.resumeTimers()重新获取响应可以。我们的项目不止一个地方使用了webview,这就导致了其他Activity打开网页的时候没有响应没有渲染,所以。场景:APP中嵌入第三方的网页时,网页中有音视频,音视频播放,APP直接到后台,音视频不会暂停播放的问题。在baseActivity中统一处理webview。方法是暂停了APP中所有的webview响应。在Activity的onPause方法中用。在onResume方法中用。

2023-02-02 10:31:54 491

原创 给你一个线程池

当线程池中的线程数超过它的corePoolSize的时候,线程会进入阻塞队列进行阻塞等待。* 3.线程空闲时的存活时间,即当线程没有任务执行时,继续存活的时间。* 1.线程池中的核心线程数,当提交一个任务时,线程池创建一个新线程执行任务,直到当前线程数等于corePoolSize;* 那么就会回收部分空闲(60秒不执行任务)的线程,当任务数增加时,此线程池又可以智能的添加新线程来处理任务。* 6.创建线程的工厂,通过自定义的线程工厂可以给每个新建的线程设置一个具有识别度的线程名。* 推荐用这种线程池。

2023-01-17 11:44:56 461

原创 线程池使用

当一个线程start()之后,是在run方法里通过wait()、sleep()等方法来改变状态,而线程池是改不了线程的状态的,线程池的作用是用来管理这些线程何时开启start,还没开启的线程怎么排队,优先级是怎样的,线程池就是做这些工作。

2023-01-04 10:42:08 303

原创 Recyclerview滑动点击居中

Recyclerview滑动以及点击居中横向显示

2022-10-08 14:20:05 736

原创 Android滑动图片验证码

/moveX就是滑动的距离,这里已经对屏幕分辨率进行相应的处理。滑动图片验证:随着seekbar滑动,view随着动就是了,主要就是图片的比例跟滑块的图片比例。-- 进度条滑动时填充颜色 -->private float number;-- 描边颜色 -->//seekbar动态设置,左侧空白问题。// x坐标最大移动长度。seekbar滑动进度条资源。number就是相应的比例。...

2022-09-01 09:28:26 870

原创 Android->layer-list画对号画叉号画箭头画进度条

- 进度条滑动时填充颜色 -->-- 描边颜色 -->

2022-08-04 17:14:37 862

原创 TextView类似朋友圈可点击超链接以及缩放

TextView类似朋友圈部分可点击超链接以及缩放

2022-07-18 11:13:40 164

原创 自定义类似刮刮乐View动态配置刮出图片

其实很简单就是ImageView先画蒙版,蒙版需要是本地的图片,这里画图片需要本地图的地址或者流如果需要加载线上的图片,建议图片缓存流然后加载(当然只是纸上谈兵,有心的小伙伴可以试试)这里在抬手的时候就进行加载网络图片了public class MyCardView extends AppCompatImageView { private Paint mForePaint; private Bitmap mBitmap;//加载资源文件 private Canvas mF.

2022-05-13 16:22:49 277

原创 自定义签名View以及绘制

主要思路就是在onTouchEvent处理move路径落笔的地方就用mPath.moveTo(event.getX(),event.getY());滑动就用mPath.quadTo(mPreX,mPreY,endX,endY); 我这里认为在up的时候就是一笔花完了,drawUp方法是自己处理逻辑用的。switch (event.getAction()){ case MotionEvent.ACTION_DOWN: curDate = new Date(System.curr...

2022-05-13 10:27:03 290

原创 Retrofit post请求raw传参

RequestBody requestBody1 = RequestBody.create(MediaType.parse("text/plain"),"我要传的字符串");接口:Observable<JsonObject> postMessageToNet(@Body RequestBody requestBody);

2022-03-20 10:14:35 792

原创 使用特殊表情当字符使用问题

先上个图标链接:react-native-vector-icons directory这个里面有很多分类的很多图标来个开源项目:GitHub - oblador/react-native-vector-icons: Customizable Icons for React Native with support for image source and full styling.如果只是为了使用,那么duck不必看了只需要看Fonts文件下下来,glyphmaps文件下下来这两个文件里面

2022-02-11 17:35:31 432

原创 GradientDrawable动态设置drawable文件

GradientDrawable bluestroke_radius,bluestroke_whitesolid,bluestroke_whitesolid_radius, bluestroke_whitesolid_leftradius,bluestroke_bluesolid_rightradius,bluestroke_bigradius;bluestroke_radius = new GradientDrawable();//蓝色描边带圆角bluestroke_whit.

2022-02-10 15:05:25 461

原创 ‘keytool‘ 不是内部或外部命令,也不是可运行的程序

关于As里直接输入keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey报错问题直接上步骤:C盘的User里面找到.android文件路径类似:C:\Users\86136\.android这个下面就有debug.keystore文件,也就是C:\Users\86136\.android\debug.keystore不要直接沾我的路径,沾自己的2,jdk的默认安装路径是C:\Progr

2022-02-09 17:55:04 1502

原创 Android 隐藏导航栏,状态栏,全屏显示

这么说吧,看别人的文章不如看开发者文档啊隐藏导航栏 | Android 开发者 | Android Developers@Overridepublic void onWindowFocusChanged(boolean hasFocus) { super.onWindowFocusChanged(hasFocus); if (hasFocus) { hideSystemUI(); }}private void hideSystemUI() {...

2022-01-21 10:53:00 1995

原创 Android获取设备mac地址,获取序列号

public static String getMac(Context context){ String mac = ""; if(Build.VERSION.SDK_INT < Build.VERSION_CODES.M){ mac = getMacDefault(context); }else if(Build.VERSION.SDK_INT>=Build.VERSION_CODES.M &&Build.VERSION.SDK_INT.

2022-01-05 15:45:11 2425

原创 圆形倒计时CountDownTimer(60s)

注意:调用直接在布局文件中用就行,setDuration直接用,也可以自己修改,颜色可以自己修改import android.content.Context;import android.graphics.Canvas;import android.graphics.Paint;import android.graphics.Rect;import android.graphics.RectF;import android.graphics.Typeface;import android.

2021-11-02 11:24:18 1518

原创 SM2只有私钥情况下解密

结合了两个大佬的代码,目前应该都是第一个大佬的代码第一个Android_国密_SM2、SM3、SM4_ylineyline的专栏-CSDN博客第二个Android常用加密库集合_lambert_Lei的专栏-CSDN博客首先导入包:Android_国密_SM2、SM3、SM4_ylineyline的专栏-CSDN博客implementation 'org.bouncycastle:bcprov-jdk16:1.46'接下来,都是自定义的东西不要找SM2的包在哪,SM2是自己的类p

2021-10-26 11:43:36 2238 2

原创 SpannableStringBuilder点击事件以及部分字体变颜色字体样式等问题

我们的App开发一开始进入的时候有用户协议以及隐私政策的提示您可以查看完整版《用户协议》和《隐私政策》这里的用户协议和隐私政策是可以点击跳转链接的注意:一开始我先调整的字体的颜色,然后加的点击事件,发现字体颜色不会改变,后来把点击事件跟字体颜色设置顺序换了一下,字体颜色就修改了SpannableStringBuilder spannableBuilder = new SpannableStringBuilder(message);ClickableSpan clickableSpanO

2021-09-02 10:58:44 1631

原创 Glide加载动态ImageView图片模糊问题

Glide.with(mContext) .load(path) .override(Target.SIZE_ORIGINAL, Target.SIZE_ORIGINAL) .into(imageView);.override(Target.SIZE_ORIGINAL, Target.SIZE_ORIGINAL)就是加上这个属性,ImageView我设置了<ImageView android:id="@+id/float_ima.

2021-07-14 17:54:42 716

原创 布局中键盘弹起背景不动,以及键盘弹起状态监听

<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@color/black" android:g.

2021-06-09 17:42:11 177

原创 ExpandListView展开更多评论收起以及TextView展开全文收起的使用

布局Activity:public class DiscussAty extends BaseAty implements CommentExpandAdapter.DiscussTextViewOnclick,OnClickListener{ private ImageView image_back; private TextView editText; private ExpandableListView commentExpandableListView; pri

2021-04-16 18:05:31 406

原创 ClickableSpan和View.onClick()事件冲突解决

项目需求是可以实现文章的点开查看全文和收起功能这里用到了SpannableStringBuilder进行拼接,对文章行数以及字数进行相关的处理,然后进行点击事件的处理结果最后出现了问题:在同一段文字中,点击可点击文字部分时,所有的文字也会响应,也就是span响应的同时,onclick也响应了第一时间想到的就是怎么拦截它下面奉上自定义的这个Viewpublic class CollapsedTextView extends androidx.appcompat.widget.AppCo

2021-04-12 16:58:13 870

转载 WebView的WebSetting所有属性说明

WebSettings用于管理WebView状态配置,当WebView第一次被创建时,WebView包含着一个默认的配置,这些默认的配置将通过get方法返回,通过WebView中的getSettings方法获得一个WebSettings对象,如果一个WebView被销毁,在WebSettings中所有回调方法将抛出IllegalStateException异常。1、setSupportZoom(boolean support)设置WebView是否支持使用屏幕控件或手势进行缩放,默认是true,.

2021-03-26 10:31:44 1129

原创 关于Android Error:Execution failed for task ‘:app:compileDebugJavaWithJavac‘ 等问题解决办法

想写这么一篇文章,主要是因为一个小小的问题然后导致自己度娘了很久也没解决这个问题,最后还是多篇文章仔细分析,才看出问题也谢谢各位csdn大佬的方法,在这里我仅写一下我解决问题的方法,供大家参考1,Android Studio 中Terminal中命令语句查看详细的编辑错误信息就这句话: gradlew compileDebug --stacktrace -info然后来就能看到详细的信息,这里我看到这个指令,我的错误是transformNativeLibsWithSyncJniLibsF..

2021-03-08 15:03:28 1815

原创 VLC在Android中的使用以及vlc中options的参数

/**options 中的参数,我在csdn中找过很多篇文章了,有的文章一个参数也没写,有的写的都是关于缓存的,还有的写了几个,也没说明是什么意思然后只能跑到csdn下载文档查看,为了方便网友们的使用,这里就简单写一下我是怎么使用的,后面会附上options的参数意义position就是当前播放第几条media.setHWDecoderEnabled(true,true);//开启硬件加速 参考的网友的代码surfaceView就是容器了,这个在布局中自己定义一下就行*/public vo.

2021-03-01 16:10:42 5229 5

原创 Android关于7.0Apk自动升级问题

准备:Android7.0Apk下载自动升级首先要确定设备进行root了,获取了读写权限,自动获取还有<uses-permission android:name="android.permission.INSTALL_PACKAGES" tools:ignore="ProtectedPermissions" /><uses-permission android:name="android.permission.REQUEST_INSTALL_PACKAGES"

2021-02-18 14:57:17 219

原创 关于WebView的OnKeyListener响应两次问题

问题原因:setOnKeyListener之所以执行两次是因为它的KeyEvent.ACTION_DOWN和KeyEvent.ACTION_UP被占用了,解决方法是KeyEvent.getAction()==KeyEvent.ACTION_DOWN或者KeyEvent.getAction()==KeyEvent.ACTION_UP的时候让他执行return true不进行下传,也就是在按下的时候执行一次,在抬起的时候不执行方法就可以myX5WebView.setOnKeyListener(ne.

2020-11-23 11:40:31 471

原创 关于使用X5WebView导致无法监听onKeyDown问题

这两天因为需要,在网上找的X5WebView的框架,在布局中使用<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/web_layout" android:layout_width="match_parent" android:layout_height="match_parent" android:fitsSystemWindo

2020-10-23 15:00:29 681

原创 Android整段字体颜色渐变Spannable实现LinearGradientFontSpan颜色渐变

getRadiusGradientSpan直接填入要传的变色的内容,LinearGradientFontSpan创建的时候传入区间的色值,开始色值,结束色值,这里用Color.parseColor方法转一下就可以了。public static SpannableStringBuilder getRadiusGradientSpan(String string) {//, int startColor, int endColor SpannableStringBuilder spannabl.

2020-08-30 14:49:22 1111

原创 关于抽奖按钮数字变化问题

抽奖按钮第一时间想到的就是handler通过postDelayed方法来改变textview的值,鉴于时间比较着急,就采用这个方案。private Handler handler = new Handler(){ @Override public void handleMessage(Message msg) { super.handleMessage(msg); switch (msg.what) { case

2020-07-10 10:42:11 258

原创 Android Studio使用Litepal方法以及遇到的坑

为什么要写呢:以前Eclipse使用的时候遇到问题没总结,现在就想写下来,告诉大家不要走我的老路!!!!走老坑!!!!1.首先需要引用Litepalimplementation 'org.litepal.android:core:1.4.1'这个都没啥问题。2.创建litepal.xml文件在assets文件下,这个在创建的时候选择file就是了,然后文件结尾自己加上.xml就好了3.创建的实体类集成DataSupport,然后在litepal.xml中把bean添加进去,要具体的路径

2020-07-09 15:47:25 2060 2

原创 RecyclerView嵌套RecyclerView使用的问题

项目需求:公司出的项目需求是个预约系统,从周一到周天每天的预约情况,一天的预约中:每个节目使用的时间长短所占用的比例高度是不一样的,中间的间隔也是不一样的,总之根据需求可以自己定相关的距离。上代码:一:外层想直接用RecyclerView来实现GridView的模块功能,就用了GridManagerGridLayoutManager manager = new GridLayoutManager(this,7);但是!!!!!后期调整的时候竟然发现里面的RecyclerView不能滑动!!

2020-05-15 16:32:07 729

百度地图Demo

百度地图的覆盖物使用,定位,路线规划。

2017-03-22

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

TA关注的人

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