自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

青穗的博客

总是需要温暖,哪怕是一点点自以为是的安慰

  • 博客(63)
  • 资源 (5)
  • 收藏
  • 关注

原创 Java中加减乘除运算工具类

Java 中的 double 类型不能用于精确的加减乘除运算,这是因为计算机使用二进制来表示浮点数,而二进制无法精确表示所有十进制数。类中的方法进行舍入,例如。3、转化为整数进行运算。

2024-03-19 16:41:24 305 1

原创 关于在自定义View中使用databinding双向绑定导致oom的问题(pthread_create (1040KB stack) failed: Try again)

关于在自定义View中使用databinding双向绑定导致OOM的问题(pthread_create (1040KB stack) failed: Try again)

2024-01-10 20:51:28 406 3

原创 Android自定义注解实现一键校验实体类参数

Android自定义注解实现参数校验

2023-09-06 17:14:07 241

原创 Android实现超出固定行数折叠文字“查看全文“、“收起全文“

Android实现超过固定行数折叠文本内容,显示“展开”、“收起”

2023-08-14 18:14:07 847

原创 关于mvvm简易封装(三)

MVVM开发架构封装

2023-08-09 11:30:57 171

原创 Android Tencent Shadow 插件接入指南

Android Tencent Shadow 插件接入指南

2023-08-04 18:55:21 1962

原创 关于最新版Android Studio编译提示Unable to load class ‘javax.xml.bind.JAXBException‘.的问题

Android构建错误:无法加载'javax.xml.bind.jaxbexception

2022-07-29 10:25:30 1643 1

原创 关于在MVVM框架中BaseRecyclerViewAdapter的封装

关于在MVVM框架中BaseRecyclerViewAdapter的封装前言计划封装后代码效果开始封装前言由于在Android Studio4.0+后黄油刀的不适配,而且官方也出公告了不会再适配了,推荐大家使用官方的ViewDataBinding,所以重新对RecyclerView的Adapter重新进行了封装计划去除黄油刀,并且不需要使用findViewById ,剩余实例化控件的代码;区别出普通列表模式和头布局模式 ,可以新增单独的头布局;增加点击事件、长按事件 功能,给列表单独添加触控事

2021-05-24 14:10:20 484 2

原创 关于Android Q上点击通知无法跳转的问题

在Android Q 即api 29上,可能会出现使用PendingIntent点击通知无法跳转的问题,但是你找了半天找不到问题,举个例子,app自动更新兼容android Q的时候就会遇到这个问题,下载完安装,当app处于前台的时候没有任何问题,在后台的时候就会出现问题,因为google在Android Q 上禁止后台启动activity了,所以当你在gradle中设置:targetSdkVersion 29后就会出现app在后台的时候无法启动系统的安装程序了,于是查阅资料人家会告诉你这样写:ap

2020-07-06 11:03:50 3047

原创 关于mvvm简易封装(二)

上篇文章我们封装了基础的BaseActivity、BaseFragment和最最最基础的BaseViewmodel。那么疑问来了BaseViewModel暂时没有看到任何用处,那么我们可以用来干嘛呢?那么这篇博文就来解答这个问题前言Retrofit 是一个 RESTful 的 HTTP 网络请求框架的封装,网络请求的工作本质上是 OkHttp 完成,而 Retrofit 仅负责 网络请求接口的...

2020-03-30 17:37:42 698 3

原创 关于mvvm简易封装(一)

前言关于mvvm的出现已经很长一段时间了,但是博主一直没有太过于关注,但是由于最近接触的和新出的很多框架都是基于mvvm模式去开发的,于是花了点时间看了下。关于学习mvvm前,可能需要首先了解databing,请自行百度了,介绍databing的博客一堆,由于道行不够高深就不带大家解读源码了。有了databing的加入你的项目再也不需要findViewById了,也不需要butterknife...

2020-03-30 15:34:51 1158 5

原创 关于Android Studio打包出现错误

打包提示以下错误:Cause: failed to decrypt safe contents entry: javax.crypto.BadPaddingException: Given final block not properly padded. Such issues can arise if a bad key is used during decryption.,别看这个错误说了...

2020-03-30 13:41:54 6562 11

原创 解决android手机虚拟键隐藏显示导致Activity被重新创建闪退桌面的问题

先说问题:在app点击返回按钮或者toolbar上的返回时偶尔app会回退到桌面但是也未捕获到异常。 其实这个问题博主项目中已经很久了,找不到原因,一开始以为是堆栈出现了问题,然后找了一段时间放弃了,因为找不到问题所在。然后突然发现有一天发现是虚拟导航键显示和隐藏导致的,然后立马定位到问题,至于解决就更简单了; 在配置文件中AndroidManifest.xml下需要不被重新创建的ac...

2019-02-14 15:44:10 1276

原创 计算两个日期相差的月份+天数

例如2018-04-05和2018-10-14,相差6月9天;下面直接上代码 /** * 计算连个日期相差多少月+天 * @param stDate * @param endDate * @return */ public static String getDayAndMonth(String stDate, String endDat...

2018-10-17 17:37:25 4853

原创 解决swipeRefreshLayout与RecyclerView的滑动冲突

网上给出的最多的滑动冲突解决办法思路:首先给RecyclerView添加滑动监听事件,其次获取recyclerView的第一个子布局的位置,如果你是上滑的话,recyclerView.getChildAt(0).getTop()获取的值肯定是个负数,当第一个item项出现,并且在顶部时swipeRefreshLayout才能启用,这样解决滑动冲突,但是这个方法在部分手机上不兼容。 网上的源码大概...

2018-08-22 14:41:35 3018 7

原创 真正解决ScrollView嵌套RecyclerView的显示不全及滑动问题

很多人都会遇到ScrollView嵌套RecyclerView嵌套的问题,各种嵌套模式,这种嵌套会出现以下几种问题: 1、ScrollView和RecyclerView两者都会滑动,而且有时候,滑动会冲突 2、RecyclerView显示不全的问题 3、如果你使用NestedScrollView会出现你一点即item就抖动的问题 4、如果你在Recycler...

2018-07-30 15:40:07 54288 3

原创 关于glide加载图片被拉伸后失真的问题

网上有很多关于关于gilde加载图片拉伸解决办法,但是有的可能对于有的人好使,有的人不好使,这是为什么呢?原因在于图片的问题,其实那些处理方式都没有解决被拉伸失真的问题。只是恰好图片可以这样处理罢了。关于启动页一般都会使用glide加载本地图片或广告图片,但是你如果用h5做的启动页当我没说。请不要使用imageView.setImageResource(R.mipmap.***);这个方法,因为...

2018-07-20 14:04:51 4858

原创 关于Android 8.0后notification通知声音无法关闭或开启的问题

Android O更新已经有很长一段时间了,然而也带来了很多适配的问题,比如:app无法自动安装的问题,通知栏无法显示的问题等等。今天我们说说通知栏的声音无法关闭的问题。因为很多应用更新用的是notification创建一个前台通知,放在通知栏中给用户展示下载进度和提示内容,那么由于Android O引进了一个新的概念,那就是NotificationChannel,想知道相关属性和介绍可以去看看...

2018-07-19 17:37:46 24378 11

原创 自定义SwipeRefreshLayout+RecyclerView刷新加载封装

        Google官方出的SwipeRefreshLayout还挺好的,不过只能支持刷新,加载的话需要稍加代码改动。那么既然要改我们不如直接SwipeRefreshLayout+RecyclerView封装下,目前最流行的RecyclerView列表式控件,它能实现网格状,竖向,横向和各种布局样式,listView的时代已经过去了。CSDN今天不知道抽什么风,无法上传gif图,那看效...

2018-07-18 11:36:17 1467

原创 android 版本更新适配8.0,解决8.0手机无法更新自动安装apk

        随着android 7.0的普及android 8.0的也逐渐流行起来,那么google对权限方面又有了新的修改。而且我发现在android8.0中除了一些bug,比如说:在小米6(Android 8.0系统)中无法自动安装的问题,那么之前做的更新系统就要稍微调整下。        那根据android 8.0我们重新理一下更新的思路:       1、写一个接口调用是...

2018-07-13 11:46:36 3013

原创 关于集成融云后无法打开相机的问题

其实这个问题官方给出了,解决方案,就是把下面的代码 <provider android:name="android.support.v4.content.FileProvider" android:authorities="你的包名.fileprovider" android:exported="false" ...

2018-07-09 14:17:16 493

原创 关于intent调用文件管理并获取选择文件的路径的问题

    网上很多关于调用文件管理并返回路径的demo,给你详细介绍了,很多很多做了很多适配,看似很厉害,但是那些博客都是抄过来的,并不能使用,你用起来会各种报错,各种文件路径找不到,例如这类(下面的链接)的文章都是你抄我我吵你的,千万不要看https://www.cnblogs.com/panhouye/archive/2017/04/23/6751710.html Intent i...

2018-05-29 09:20:59 4041 5

原创 gradle3.0后无法使用ButterKnife插件的问题

    最新版gradle插件已经更新到3.1.2,那么如果你原来是2.*的话你更新后会出现很多问题,就不说了,这里说下无法ButterKnife的问题。     解决办法如下:            第一、代码中删除项目的删除项目中build.gradle下的apply plugin: 'com.neenbedankt.android-apt'和app下build.gradle的apt 'com...

2018-04-28 10:52:24 1194 2

原创 解决gradle更新后导致app中引用不到module下的jar包问题

    博主最近拿到一个二次开发的项目。公司以前这个项目是外包出去的,外包做的,大家也知道外包怎么工作的,四个字形容就是快速开发,那么就有些问题,很多东西框架比较落伍过时,拿到手改掉网络框架,不支持ip的反向代理于是从底层换掉网络框架,哎,难为我这个菜鸡了,然后我发现gradle插件还是2.2.3的版本于是更新了下,更了最新的3.1.2于是除了很多问题。    1、最近的会提示你compile过时...

2018-04-28 10:42:06 7567

原创 自定义banner图支持点击浏览大图或跳转url,缓存本地等

在实际应用中,banner轮播图是必不可少的东西,首页的话可能需要点击跳转广告等,或者在某项内容内可以点击浏览大图手势放大缩小等那么这些功能虽然不难但是写起来很麻烦,于是我封装了下,方便引用以后,首先直接上代码吧,里面用到的一些类下面就讲解首先你可能需要在values下的attr添加以下代码(没有attr就新建一个): //标题 //是否可以点击浏览大图

2018-04-17 10:16:18 2392

原创 解决viewPager+Fragment会出现viewpager中的fragment高度不正常的问题

当你用到viewPager+Fragment这个组合的时候可能会出现字fragment出现子部fragment高度显示不了或者不正常的问题,那么我们只需要重写viewpager即可,在viewpager中计算下子布局的大小即可: @Override protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec)

2018-04-16 17:30:35 3318

原创 BaseActivity结合toolbar的简单使用和封装

toolbar就不做过多的解释了,想必网上已经很多了,最近事情不多就写了个baseactivity+toolbar的封装,避免每次创建activity都写过多的冗长的代码,也可以避免每个activity都要include一下标题栏布局文件。直接上baseActivity代码,代码不多也有注释就不做过多解释了package com.qingsui.toolbar;import android

2018-03-14 17:17:28 797

原创 自定义SwipeRefreshLayout下拉刷新上拉加载+RecyclerView

下拉刷新的样式参照某个博友的但是找不到原博客了,敬请见谅。代码根据源代码,做了修改重新编辑,建议转新的链接:https://blog.csdn.net/fzkf9225/article/details/81094774最近工作不太忙感觉原来项目的swipeRefreshLayout刷新样式有点丑于是就参照了别人的然后自己写了个自定义样式的上拉刷新下拉加载,并且封装了emptyLayout最...

2017-12-29 15:49:07 1022

原创 完美解决SwipeRefreshLayout与RecyclerView滑动冲突问题

直接上代码 //解决swipelayout与Recyclerview的冲突 recyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() { @Override public void onScrolled(RecyclerView recy

2017-12-29 14:20:25 3168 1

转载 关于recyclerView快速上下滑动时的崩溃问题

转载自http://blog.csdn.net/w_lin/article/details/53019888最近发现recyclerView快速滑动时会崩溃,百度发现是Inconsistency detected. Invalid item position 16(offset:16).state:25异常,因此我对事件进行拦截,发现依旧不查了半天才找到这个博主写的解决了我的问题,分享给大家,首先我

2017-12-15 17:49:40 1684 1

原创 部分机型PopupWindow先点开后无法取消的问题

部分机型PopupWindow先点开后无法取消的问题,博主最近一直没发现popupWindow会出现这个问题,突然一个同事跟我说app在vivo一款机型上不能消失,只能点击后消失,网上说setBackgroundDrawable(null);这样写即可,其实这样并不能解决问题,结果消失的问题就必须设置一张背景图,最好是个.9图,需要重写popupwindow控件,添加一下代码 /

2017-12-15 12:10:07 609

转载 Android Bottom Sheet属性和使用详解

转载自http://blog.csdn.net/qibin0506/article/details/51002241 最近android更新了support library, 版本到了23.2, 从官方blog中我们还是可以看到几个令人心动的特性的,例如夜间模式的支持,BottomSheet.今天我们就来介绍一下这个Bottom Sheet,这可能会给我们开发中需要的一些效果带来便利.

2017-12-11 12:25:39 1769

原创 Scrapped or attached views may not be recycled. isScrap:false isAttached:true异常

这个异常很让人捉摸不透,因为他根本不报哪里错了,如果是新手的话,肯定找不到错在哪,那么问题出在哪里呢?那是因为你在xml布局中给recyclerview加上了动画去掉这一行代码即可android:animateLayoutChanges="true"

2017-12-10 12:21:58 1431

原创 Android自定义星星评分控件代替RatingBar的使用

大家做android的就知道android自带的控件很丑,所以很多控件都需要自定义,例如这里说道的RatingBar控件,自带的奇丑无比,那么下面看看怎么利用自定义控件代替RatingBar控件吧,直接上个工具类,可以直接粘贴使用import android.content.Context;import android.content.res.TypedArray;import andro

2017-12-06 10:43:24 4826 4

转载 Android的supportV7中默认按钮和选中框的颜色设置

http://blog.csdn.net/l465659833/article/details/52861964 网上很多更改checkbox勾选框颜色的博客都是互相抄袭的,根本没有任何效果,现在推荐这个博主的博客还是很有效的,我们可以尝试更改当前activity的theme来更改checkbox或者dialog打的默认按钮勾选等默认样式

2017-11-28 14:12:20 1362

原创 当tabLayout+viewPager滑动时,滑动N次后viewPager中的fragment会变成空白页的问题

当tabLayout+viewPager组合是最常用的侧滑选项卡,有的人会发现,当你多次滑动时 ,内嵌的fragment的会出现空白,苦恼了我好久,了解原理后发现很简单,其实只需要FragmentPagerAdapter中的destroyItem方法,代码如下,注意红字部分,去掉super即可public class OrderSimpleFragmentPagerAdapter extend

2017-11-13 20:31:08 1077

原创 当popupWindow内嵌套recyclerView布局过长的时候会被顶上去的问题

最近在写一个自定义的popupWindow的时候,里面嵌套recyclerView布局,recyclerView内是个自定义的布局,但是当数据过多的时候popupwindow设置在某个控件下方的时候就不准确了,会被顶上去,这样就达不到效果了,解决方法如下首先你需要自定义一个popupWindow,重写showAsDropDown方法。直接上代码 @Override public voi

2017-11-08 10:53:03 2614

原创 android 百度地图根据地址检索经纬度

地理编码指的是将地址信息建立空间坐标关系的过程。有可分为正向地图编码和反向地图编码。正向地理编码指的是由地址信息转换为坐标点的过程,x核心代码如下:  第一步,创建地理编码检索实例;mSearch = GeoCoder.newInstance();第二步,创建地理编码检索监听者;OnGetGeoCoderResultListener listener = new OnGetGeoC

2017-10-30 12:21:32 2788

转载 Android实践之ScrollView中滑动冲突处理,mapView百度地图滑动冲突

欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl

2017-10-28 16:08:01 910

原创 解决使用Glide加载图片的时候会出现拉伸的情况,即使设置了centerCrop()也没用的问题

在加载图片的时候glide是我们最常用的库,因此,有时候我们需要设置图片的拉伸,有时候我们不需要设置拉伸,在不需要设置拉伸的时候,但是他偶尔会出现拉伸情况,那么是因为你设置了动画crossFade(300)Glide.with(this).load(contents).centerCrop().placeholder(R.mipmap.icon_banner_default)

2017-10-28 14:22:15 6077

android 版本更新

通过service检测软件版本,利用BroadcastReceiver和service实现下载自动安装,兼容android8.0系统

2018-09-20

SwipeRefreshLayout+RecyclerView刷新加载自定义控件封装

SwipeRefreshLayout+RecyclerView刷新加载封装并内嵌RecyclerView和EmptyLayout控件,可自定义头布局和尾布局

2018-07-18

自定义轮播图

对banner轮播图进行封装,实现banner图的自动轮播,缓存本地,跳转url链接点击查看大图手势放大缩小等,可以在布局中一键引用

2018-04-17

BaseActivity和toolBar简单使用和封装

BaseActivity和toolBar简单使用和封装,可以添加菜单项去除重复代码等,方便开发继承使用

2018-03-14

swipeRecyclerViewDemo

自定义SwipeRefreshLayout下拉刷新上拉加载+RecyclerView封装

2017-12-29

空空如也

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

TA关注的人

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