自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(190)
  • 收藏
  • 关注

原创 Fragment中onActivityResult不回调的问题

Arouter改成这样既可,关键在于上下文 getActivity改为getFragment。

2023-07-31 18:00:47 187

原创 解决NestedScrollView、ScrollView加载完自动滑动至顶部或底部问题

很多小伙伴在使用以上两个布局时都会遇到切换用NestedScrollView 或ScrollView作为外层布局的页面时,内容自动上移了。上移的原因是NestedScrollView或ScrollView或自动滚动到获取了焦点的child view的位置。NestedScrollView、ScrollView内容上移原因。通过让其获取焦点来解决该问题。

2023-01-06 17:08:51 1500 1

原创 android textview限制显示几行+省略号

【代码】android textview限制显示几行+省略号。

2023-01-06 14:52:15 436

原创 Android提高Webview网页加载速度的方法

Android提高Webview网页加载速度的方法

2022-10-28 10:23:46 1971

原创 ViewPager + Fragment 数据刷新问题

【代码】ViewPager + Fragment 数据刷新问题。

2022-09-16 15:23:06 586

原创 用Gson解析数据为map,int值变double值问题

代码】用Gson解析数据为map,int值变double值问题。

2022-08-02 16:33:08 679

原创 Git中submodule的使用

面对比较复杂的项目,我们有可能会将代码根据功能拆解成不同的子模块。主项目对子模块有依赖关系,却又并不关心子模块的内部开发流程细节。这种情况下,通常不会把所有源码都放在同一个 Git 仓库中。有一种比较简单的方式,是在当前工作目录下,将子模块文件夹加入到 文件内容中,这样主项目就能够无视子项目的存在。这样做有一个弊端就是,使用主项目的人需要有一个先验知识:需要在当前目录下放置一份某版本的子模块代码。还有另外一种方式可供借鉴,可以使用 Git 的 功能,也是这篇文章的主题。实际上 Git 工具的 功能就是

2022-07-14 14:37:04 7475

原创 SeekBar设置android:thumb显示背景色

shape_progress_bgshape_progress_handlethumb图片显示背景色,使用android:splitTrack="false"即可。如果SeekBar 设置thumb 图片后,设置进度100%后,覆盖最右侧一部分,解决办法就是设置偏移量 android:thumbOffset="1dp"...

2022-07-11 15:50:41 1320

原创 打造永不崩溃应用

java层崩溃,可以捕获。通过捕获子线程和主线程的方法实现。方法如下:1.子线程捕获异常2.主线程捕获异常

2022-07-05 10:43:04 72

原创 BaseBottomSheetFragment嵌套RecyclerView滑动冲突

BaseBottomSheetFragment里面的如下代码会存在滑动冲突解决方法:

2022-06-27 15:00:50 516

原创 Android 获取应用签名证书的SHA1、SHA256和MD5

Android 获取应用签名证书的SHA1、SHA256和MD5

2022-06-22 16:27:03 1071

原创 Unable to extract the trust manager on Android10Platform

sslSocketFactory的参数由一个改为两个即可

2022-06-22 15:14:50 489

原创 Android library引用AAR

1.将AAR包放入library里面的libs文件夹里面2. library的build.gradle添加如下内容 3.主工程的build.gradle添加如下内容

2022-06-22 11:43:11 1356 1

原创 设置TextView滚动

设置TextView滚动

2022-06-10 13:57:18 634

原创 NestedScrollView 中嵌套 LinearLayout,使用layout_weight不生效

NestedScrollView继承于ScrollView,故添加属性android:fillViewport="true"即可

2022-06-07 11:01:06 274

原创 设置图片部分圆角

android设置图片部分圆角

2022-06-06 17:48:11 344

原创 ImageView 实现宽度填满,高度自适应

ImageView 实现宽度填满,高度自适应

2022-06-02 16:25:46 491

原创 Android EditText 密码内容显示隐藏

/ 显示明文--设置为可见的密码. mPasswordET.setTransformationMethod(HideReturnsTransformationMethod.getInstance()); // 显示密码密文. mPasswordET.setTransformationMethod(AsteriskPasswordTransformationMethod.getInstance());public c.

2022-05-31 16:07:14 283

原创 RecyclerView分页预加载网络数据

当还没有滑动到底部,自动请求下一页数据。在baseAdapter里面做如下判断即可private int preLoad = 5;//倒数第5个就自动加载private boolean noMoreData = false;//数据是否加载完,如果加载完 需要设置为true,以免上划时走预加载回调protected List<Data> mData;//数据 @Override public final void onBindViewHolder(@NonNull V

2022-05-27 15:21:33 663

原创 RecycleView最后一条显示不全

试一下三种方法:1.recyclerview高度设置为0dp,然后添加app:layout_constraintBottom_toBottomOf="parent"2.recyclerview用NestedScrollView包起来3.recyclerview外套RelativeLayout

2022-05-27 15:15:35 619

原创 CoordinatorLayout嵌套CoordinatorLayout

实际效果只有二级页面的TabLayout能够粘在顶部,而一级页面是不会有联动的。解决方案:自定义NestedCoordinatorLayout,替换二级页面的CoordinatorLayout。NestedCoordinatorLayout代码如下,import android.content.Context;import android.support.annotation.IntDef;import android.support.annotation.NonNull;impor

2022-05-24 10:03:24 928

原创 Android的dialog全屏显示不全

状态栏和导航栏都可能不适配:上下两边都显示下层界面状态栏不适配:虽然状态栏信息不显示,但是dialog没有覆盖全屏,仍然显示下层界面目前测试机型有:水滴屏、摄像头挖孔屏导航栏不适配:导航栏还在,不是全屏状态适配后Dialog 全屏适配2、代码实现//顺序不能颠倒,否则出现导航栏无法适配问题 hideNavigationBar(); adjustFullScreen(getWindow()); getWindow().setBackgroundDrawa...

2022-05-18 17:53:54 2157

原创 H5调用Android图片和拍照

这个功能需要自己做兼容处理,需要自己去实现,实现代码为:1.拿取回调接口mUploadCallbackAboveLprivate ValueCallback<Uri[]> mUploadCallbackAboveL;//回调图片选择,5.0以上 mWebView.setWebChromeClient(new WebChromeClient() { // For Android 5.0+ @Override publ

2022-05-12 10:08:56 1828 1

原创 WebView加载h5页面弹窗无法显示问题和申请摄像头权限问题

首先需要设置webview支持js,在Android 9.0后,访问地址如果是http开头的,还需要在配置文件里设置允许http访问:android:usesCleartextTraffic=“true”webview基础设置:WebSettings webSettings=mWebView.getSettings(); webSettings.setJavaScriptEnabled(true);//允许使用js webSettings.setDomStor

2022-05-06 17:38:34 5732

原创 Webview执行goBack不能返回

1.问题描述最近有很多人问我为什么webview加载一个网页,执行了goback网页不能返回的问题,我特此来为那些有问题的或者说有遇到这个问题不知道怎么下手解决的,可以看看下面的解答,或许会对你有所帮助吧。2.问题原因webview执行goback为什么不能返回上一页面,而为什么有的网页可以返回上一个页面呢?这到底是什么原因导致的这个问题呢?是因为web页面在被打开的时候是以url1打开,一部分网页是执行了重定向,那么它就会定向到另外一个url2地址上面去,导致你goback返回是返回了,当它从

2022-05-06 17:13:06 1283

原创 CoordinatorLayout+AppBarLayout滑动抖动(回弹闪烁)问题

自定义AppBarLayout.Behaviorpublic class FlingBehavior extends AppBarLayout.Behavior { private static final int TOP_CHILD_FLING_THRESHOLD = 3; private boolean isPositive; public FlingBehavior() { super(); } public FlingBehavior

2022-04-25 14:01:20 1044 1

原创 Android studio打包时忽略指定的jar

给第三方提供AAR包的时候,有可能jar包重复冲突了,那打包的时候就可以忽略指定的jar包。方法如下://打包时忽略mtr-fundsource-interface-sdk-1.0.1 gradle.projectsEvaluated { tasks.withType(JavaCompile) { options.compilerArgs.add('-Xbootclasspath/p:app/libs/mtr-fundsource-interface-s

2021-09-23 15:19:49 1082

原创 gradlew相关命令

在开发时有些小伙伴喜欢使用gradlew 命令行进行打包编译App,使用起来很安逸.gradlew -v //查看Gradle、Groovy、Ant、JVM等的版本gradlew clean //和clean project 类似gradlew tasks --all //查看所有任务gradlew build --info //编译并打印日志gradlew clean build --refresh-dependencies //强制更新最新依赖,清除并构建gradle.

2021-09-22 14:09:41 413

原创 Android拦截java层异常,不让APP崩溃

new Handler(getMainLooper()).post(new Runnable() { @Override public void run() { while (true) { try { Looper.loop();  //try-catch主线程的所有异常;Looper.loop()内部是一个死循环,出现异常时才会退出,所以这里使用while(true)。 } catch (Throw.

2021-09-17 14:53:45 381

原创 Android Studio ndk/jni debug调试太耗时,怎么关闭ndk调试

如下图:点击app,点击 Edit Configurations

2021-09-17 14:47:38 626

原创 Android临时图片避免在系统相册中显示

问题项目缓存到本地的图片,经常在相册中直接可以查看,导致用户相册凌乱,而且敏感信息容易泄露。解决方案在文件夹中添加一个.nomedia文件,该文件可以避免媒体文件被系统扫描(包括音视频文件),从而不在多媒体数据库中保存信息。...

2021-07-14 15:04:20 668

原创 SpannableString和SpannableStringBuilder

一、概述1、SpannableString、SpannableStringBuilder与String的关系首先SpannableString、SpannableStringBuilder基本上与String差不多,也是用来存储字符串,但它们俩的特殊就在于有一个SetSpan()函数,能给这些存储的String添加各种格式或者称样式(Span),将原来的String以不同的样式显示出来,比如在原来String上加下划线、加背景色、改变字体颜色、用图片把指定的文字给替换掉,等等。所以,总而言之,.

2021-04-22 17:01:10 420

原创 修改状态栏字体颜色和背景颜色

修改状态栏字体颜色如下:getWindow().getDecorView().setSystemUiVisibility( View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR);修改状态栏背景颜色如下:if (Build.VERSION.SDK_INT >= 21) { Window window = activity.getWindow(); window.setNavigation

2021-03-15 14:36:06 680

原创 RecyclerView刷新数据焦点丢失?

RecyclerView进行数据更新时焦点丢失的解决方案在使用RecyclerView时,难免会用到adapter的notifyDataSetChanged方法来更新数据,其实notify**Changed系列方法都存在一个已知的焦点丢失的bug,如果在notify之后重新手动requestFocus,又会导致焦点可能不对应的问题。可以使用如下步骤规避此问题:1.为adapter提供stableId:stableId在Listview和RecyclerView中都被用来定位一个item,官方建

2021-03-13 16:36:12 1756

原创 弹出Dialog时隐藏状态栏和底部导航栏

private void fullScreenImmersive(View view) { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) { int uiOptions = View.SYSTEM_UI_FLAG_LAYOUT_STABLE | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_HIDE.

2021-02-26 15:39:40 999

原创 更新AAR包缓存问题

最有的方法如下:删除对应的AAR包后,直接rebuild一下就好了

2020-12-30 10:55:47 390

原创 No static method create()Lorg/webrtc/EglBase;

这是webrtc的一个bug,修改方法如下:根目录的gradle版本不要太高了可以改为下面:classpath 'com.android.tools.build:gradle:3.4.2'或者classpath 'com.android.tools.build:gradle:3.2.1'

2020-12-29 16:51:38 519

原创 Android获取文件夹路径

获取/data/data/下路径String printTxtPath = getApplicationContext().getPackageResourcePath() + "/files/" + fileName;=>/data/app/com.example.test/files/test.txtString printTxtPath = getApplicationContext().getFilesDir().getAbsolutePath();=> /data/da.

2020-11-13 11:26:06 1038

原创 Android加载高清长图

app项目开发过程中,大都有查看图片详情的功能模块。实现的方式一般都是通过viewpager+photoView+Glide的方式。这种方式下,如果碰到加载超长图,比如说高清版的清明上河图/世界地图,肯定就加载不出来了。这个时候BitmapRegionDecoder就派上了用场了布局文件<?xml version="1.0" encoding="utf-8"?><FrameLayout xmlns:android="http://schemas.android.com/a.

2020-11-10 13:59:40 695

原创 Activity 四种启动模式

(一)、基本描述1. standard:标准模式:如果在 mainfest 中不设置就默认 standard;standard就是新建一个 Activity 就在栈中新建一个 activity 实例;2. singleTop:栈顶复用模式:与 standard 相比栈顶复用可以有效减少 activity重复创建对资源的消耗,但是这要根据具体情况而定,不能一概而论;3. singleTask:栈内单例模式,栈内只有一个 activity 实例,栈内已存 activity实例,在其他 activity

2020-11-09 16:51:07 192

空空如也

空空如也

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

TA关注的人

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