自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Android 设置按钮在 下滑页面按钮隐藏,上滑页面按钮显示

代码】Android设置按钮在下滑页面按钮隐藏,上滑页面按钮显示。

2022-07-19 15:41:10 843 1

原创 禁止viewpager滑动切换

public class CustomViewPager extends ViewPager { private boolean isCanScroll = true; public CustomViewPager(Context context) { super(context); } public CustomViewPager(Context context, AttributeSet attrs) { super(context,

2021-12-07 11:23:15 384

原创 将url地址中的编码转汉字

public class URLEncoderURI { //将%E4%BD%A0转换为汉字 public static String unescape(String s) { StringBuffer sbuf = new StringBuffer(); int l = s.length(); int ch = -1; int b, sumb = 0; for (int i = 0, more = -1; i

2021-12-07 11:20:59 1483

原创 Glide加载RecycleView的item(ImageView)长图显示不全的问题

。Glide加载长图显示不全的问题:。。我的 ImageView 布局和设置具体的宽高设置我是在Adapter里设置的(根据接口返回的每张图的宽高)出现的问题就是当图片是长图或者全屏的图时显示不全解决:Glide加上【.fitCenter()】后图片就可以全部显示了ImageView中的【android:scaleType=“fitXY”】可以不用...

2021-12-03 15:15:08 1159

原创 ScrollView中的LinearLayout/RelativeLayout的height属性match_parent 无效的解决办法

。。。解决:给ScrollView添加以下属性就可以了android:fillViewport="true"

2021-12-01 19:07:48 2211

原创 Context.getSystemService on a null object reference和 IllegalArgumentException: You cannot stata load

报错一:Context.getSystemService on a null object reference如图:我出错的原因是没有对Context实例化报错二:IllegalArgumentException: You cannot start a load on a null Context我出错的原因是在fragment中使用图片加载Glide时上下文对象用的是 context,修改为 getContext 后回复正常问题总结:没有对Context实例化使用了不恰当的context

2021-10-19 18:21:17 454

原创 APP上架市场隐私政策被拒(关于未经用户同意收集用户信息)

问题问题主要就是类似这种的APP本身或SDK未经用户同意收集用户信息或未明示收集的目的违规收集的针对以上问题,不进行整改市场将根据工信部相关文件规定下架应用。解决:下面是就我个人整改的方案进行总结:查看项目所用的所有三方SDK,在隐私政策里进行相关的说明(使用目的 获取的权限等信息)用户初次安装后,在隐私弹窗里用户点击确定之前不获取用户信息,App本身和第三方都不可以获取,信息包括MAC地址、软件安装列表、IMEI等。3.友盟SDK必须升级进行预初始化,根据文档修改。针对第二点

2021-08-27 18:04:52 5678 3

原创 No key with alias ‘ *** ‘ found in keystore /Users/......问题

No key with alias ’ *** ’ found in keystore /Users/…问题新配置了打包的各个环境后 编译后报了以下错误:问题原因:build.gradle里的【 keyAlias 】和 打包创建时的【 Alias 】这两个名字要一样,如下图修改完事儿后重新编译一下就OK了。...

2021-03-11 14:35:45 1459

原创 ImmersionBar(状态栏和导航栏)

**用法**1.依赖:implementation 'com.gyf.immersionbar:immersionbar:2.3.3'2.初始化:????基本用法(满足日常沉浸式):ImmersionBar.with(this).init();建议在BaseActivity里调用public class BaseActivity extends AppCompatActivity { @Override protected void onC

2021-03-02 15:59:38 9700

原创 Android EditText只能输入小数点后两位

/* * 设置edittext只能输入小数点后两位 */ public static void afterDotTwo(final EditText editText) { editText.addTextChangedListener(new TextWatcher() { @Override public void onTextChanged(CharSequence s, int start, int bef.

2020-12-10 10:29:18 572

原创 Android 姓名正则(只允许汉字和 · •)

/** *      * 姓名:允许汉字和·• *      * @param name *       */ public static boolean isLegalName(String name){ if (name.contains("·") || name.contains("•")){ if (name.matches

2020-12-10 10:23:33 552

原创 简单了解System.arraycopy()方法

对数组的复制方式有四种:forcloneSystem.arraycopy()arrays.copyof❣️一:本篇是了解System.arraycopy()System提供了一个静态方法arraycopy(),我们可以使用它来实现数组之间的复制。其函数原型是:public static native void arraycopy(Object src,int srcPos,Object dest, int destPos,int length);* @param src

2020-12-04 15:20:25 314

原创 Android 小数点后为0时不显示小数点和后面的0

//当小数点后为0时不显示小数点和后面的0//当小数点后有数值时正常显示public static String DeleteRMBZero(String rmb){ for (int i=0;i<rmb.length();i++){ if (rmb.substring(rmb.length()-1).equals("0")){ rmb=rmb.substring(0,rmb.length()-1); .

2020-09-25 11:15:00 1459 5

原创 根据输入的银行卡号识别出银行名称并显示

功能:许多项目会涉及到添加银行卡的操作,现在的需求是把拍照(银行卡)识别银行卡号和银行名称调整为:在输入银行卡号时识别银行名称并自动展示。????首先:需要有最新的数据(银行卡号和对应的银行卡名称)的整理,产品已经给到了我们,我们要做的就是把给到的excel表数据进行处理并调用。????这里我们直接把数据转成了【.json】文件。内容如下:{ "625247": "中国工商银行", "625187": "陕西秦农农村商业银行", "624458": "中国建设银行亚洲股份有限公司",

2020-09-02 15:43:13 9981 1

原创 Android 验证【手机号、姓名、身份证号】正则

对【手机号、姓名、身份证号】进行验证,最好的方法是通过正则表达式来验证,下面是几个工具方法。1、验证手机号规则:第一位只能是1,第二位为3-9中的数字,第三位到第十一位 为任意的数字。/** * 手机号号段校验, 第1位:1; 第2位:{3、4、5、6、7、8、9}任意数字; 第3—11位:0—9任意数字 * @param value * @return */ public static boolean isTelPhone

2020-07-31 18:16:14 1385

原创 Okhttp在4.x手机上报java.lang.ExceptionInInitializerError错

今天收到运营部提的一个bug 用户下载完app打开就闪退了,用户的手机设备机型【红米 HM NOTE 1S】【系统版本Android 4.4.4】。错误详细日志如下:根据错误信息看应该是版本问题,查看okhttp文档我项目里面用的是implementation 'com.squareup.okhttp3:okhttp:3.13.1'根据上面可看出我用的是支持5.0以上的手机,所以会报错。如果想要支持5.0以下的手机,需要用okhttp的3.12.x版本,解决方法直接修改okhttp版本i

2020-07-08 18:11:48 433 1

原创 Android descendantFocusability属性的简介和用处

descendantFocusability是View的一个属性。可以理解是viewGroup和其子控件焦点相关的属性。通过这个属性可以指定viewGroup和其子View到底谁获取焦点, 直接在viewGroup上使用就行。下面是这个属性的三种属性值:beforeDescendants :viewGroup会优先其子类控件而获取到焦点afterDescendants :viewGroup只有当其子类控件不需要获取焦点时才获取焦点blocksDescendants :viewGroup

2020-06-28 18:17:18 2249

原创 Android 常见的java.lang.IllegalStateException

java.lang.IllegalStateException解决方案状态异常。java.lang.IllegalStateException异常产生的原因及解决办法错误类型大致为以下几种:java.lang.IllegalStateException:Cannot forward a response that is already committedIllegalStateException:response already commitedIllegalSt

2020-06-17 14:12:12 3697 2

原创 Android 常见的java.lang.NullPointerException

java.lang.NullPointerException解决方案该异常表示尝试去调用virtual method,使用了一个空对象引用,建议您检查引用的对象是否为空。[解决方案]:这种异常通常是调用一个对象的方法抛出的,凡是调用一个对象的方法之前,一定要进行判空或者进行try-catch,这样基本可以规避大部分空指针异常。Attempt to invoke virtual method ‘void android.view.View.setTranslationZ(float)’ on a nu

2020-06-17 13:47:40 2009 1

原创 No cached version listing for ...(某个依赖)... available for of

解决方法:取消红色框标记的选项,然后 重新编译就好了。(原因是:我在没连网时编译了项目,连上网之后就报了这个错,应该就是离线模式造成的,把离线模式关了重新运行就好了)

2020-05-25 12:06:38 1847 1

原创 Android 读取本地【assets文件夹下】的json文件

一:把【.json】文件放在项目src----->main----->assets目录下二:读取json文件// 读取json文件的方法,也可写成工具类方便使用public static String getJson(Context context, String fileName) { // 将json数据变成字符串 StringBuilder stringBuilder = new StringBuilder(); // 获得assets资源

2020-05-22 10:22:28 1302 1

原创 JsonSyntaxException: java.lang.IllegalStateException: Expected BEGIN_OBJECT but was BEGIN_ARRAY

今天在读取本地【assets文件下的.json】数据并用Gson解析解析时报了以下错误。Caused by: com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: Expected BEGIN_OBJECT but was BEGIN_ARRAY at line 1 column 2 path $【JsonSyntaxException:Json数据解析异常】【BEGIN_OBJECT but was BEGIN_A

2020-05-21 15:58:18 6785

原创 Android EditText禁止输入空格

//1. edtName为想要设置的EditText控件edtName.setFilters(new InputFilter[]{filter});//2. 禁止EditText输入空格private InputFilter filter = (source, start, end, dest, dstart, dend) -> { if (source.equals(" ")) return ""; else return null;};如果用到【android:in

2020-05-18 15:01:57 561

原创 Android 扩大ImageView的点击区域范围

android:scaleType="centerInside"只需这一个属性就可以,配合ImageView的宽高设置 也就是你想多大的点击区域附上代码:<ImageView android:id="@+id/guideClose" android:layout_width="@dimen/dp_80" android:layout_height="@dimen/dp_70" android:src="@mipmap/icon_new_guide_clo

2020-05-09 11:53:45 1185

原创 Android 一个TextView中字体设置不同颜色和大小

先看效果图:如下????方式一:1.String strMsg = "1.我爱<font color=\"#E01919\">我的祖国</font>";tv.setText(Html.fromHtml(strMsg));2.String str1 = "2.我爱<font color= \"#E01919\"><small>我的祖国<...

2020-04-29 17:54:00 3171

原创 Android 代码混淆

代码混淆我们知道,打包的APK可以通过反编译工具来获得应用的源代码,所以为了防止应用进行反编译,防止有人利用漏洞进行不法勾当。我们往往会对应用进行代码混淆,这样就算能对应用进行反编译,但得到也是命名无意义的类和变量。增加分析难度。Android Studio自身集成Java语言的ProGuard作为压缩,优化和混淆工具。ProGuard作用压缩(Shrinking):默认开启,用以减小应...

2020-04-27 16:41:42 191

原创 在红米K20 PRO上应用打开就闪退问题解决

在红米K20 PRO上应用打开就闪退问题Bugly上Crash日志显示:java.lang.RuntimeException:Failure delivering result ResultInfo{......}java.lang.IllegalArgumentException: invalid provider: null出错位置getBestProvider provider...

2020-04-08 14:50:47 6147 4

原创 android:windowSoftInputMode 的属性

android:windowSoftInputMode 主要是用来设置软键盘与页面进行交互的模式。(用法有很多种)????state相关属性:1.【stateVisiable—可见状态】:无论从哪个页面跳转到该Activity页面 软键盘总是处于可见状态,即使没有输入框的情况下也能够强制的弹出。2.【stateAlwaysVisible—总是可见状态】: 无论从哪个页面跳转到该(AActivi...

2020-04-01 17:03:09 722

原创 AS运行真机安装包安装失败 Error while Launching activity

出现该错误的原因一般就是手机系统有两个app(系统分身 隐私系统),或者android studio认为你的项目还是运行在手机上的,可是你把他卸载掉了,可它并不知道,认为你的项目主Activity还在进程中,所以安装不了。解决????方法一:把手机上的项目卸载干净,若是不行或者找不见哪里还有执行下面两种方法????方法二:关掉AndroidStudio,重新启动----->Clean Projec...

2020-03-24 15:10:48 450

原创 Git提交代码时,提不上去/没有权限/版本冲突

????解决:1.基于现有分支,新建一个分支2.在新建分支上从git上把总代吗pull下来3.把现有分支的改动,添加到新建分支4.新建分支—》push5.ok????Sourcetree上遇到相同问题1.把AndroidStudio关掉重启2.Clean Project ,Rebuild Project3.重新提交(还是不行按上面办法解决)...

2020-03-24 14:48:26 743

原创 BottomNavigationView修改图标/文字大小,替换图标

????修改图标大小,代码中的20修改为自己需要的大小即可private void adjustNavigationIcoSize(BottomNavigationView navigation){ BottomNavigationMenuView menuView = (BottomNavigationMenuView) navigation.getChildAt(0); ...

2020-03-03 14:52:12 4753 3

原创 Android 页面跳转时闪屏问题

界面间来回跳转,Activity之间跳转或者Fragment跳转Activity出现闪屏问题解决方法:方法一:1⃣️。。。在startActivity()之后调用overridePendingTransition(0,0); 若是Fragment调用:getActivity().overridePendingTransition(0,0)2⃣️。。。使用overridePendingTr...

2020-01-06 16:58:42 3366

原创 类似微信或支付宝的支付密码视图

效果图如下:GridPasswordView是一个密码输入视图,类似于微信或支付宝的支付密码视图,可以设置文字颜色和大小、分割线颜色、密码的长度。1.首先,导依赖: implementation 'com.jungly:gridPasswordView:0.3'2.布局文件 <com.jungly.gridpasswordview.GridPasswordView ...

2019-12-23 10:17:32 187

原创 Mac本下Android项目获取调试版SHA1和发布版SHA1

我们在集成高德地图定位功能到项目中的时候,需要用到发布版安全码SHA1和调试版安全码SHA1。获取如下一、获取调试版SHA1,如下:*方法一:*  1. 直接输入命令 keytool -list -v -keystore ~/.android/debug.keystore 回车键;2. 输入密钥库口令 android 回车键,就可以看到调试版SHA1啦!    *  方法...

2019-12-16 13:50:23 936

原创 Android项目打包时 Cannot recover key

在打包apk包时报:Error:Execution failed for task ‘:app:packageRelease’.com.android.ide.common.signing.KeytoolException: Failed to read key androiddebugkey from store “xxx” …Cannot recover keyCannot recove...

2019-12-13 10:38:18 1145

原创 mac本下Android studio配置gradle的路径

1.找到Androidstudio自带的gradle路径(Applications/Android Studio.app/Contents/gradle/gradle-5.1.1/bin)可以从finder里Applications(应用程序)里找到*例如我这样的:点击显示包内容后:(复制文件夹的路径option+command+c ; 查看某个文件夹的详细位置可右键—>显示简...

2019-12-11 16:39:57 3710

原创 Mac本常用的快捷键

复制 粘贴 剪切 撤回 :command+C V X Z切换输入法 :control+空格键(长按显示输入法列表) 【或者】 屏幕上边—语言图标点击切换打开文件存储的位置 : Shift+Command+G复制文件的路径 :option+command+c右键 : 按住Control + 点击触摸板退出程序 :Command + Q最小化窗口 :Comma...

2019-12-10 12:03:49 273

原创 删除androidX的依赖包(Android Studio)

Android Studio升级后导androidX的依赖与其他依赖冲突打开gradle----->gradle.properties默认是true,改为false即可

2019-11-29 11:50:13 3099

原创 mac(苹果)本下Android Studio的快捷键

**常用快捷键**1. 重命名: Shift + F62.代码内联(Inline,比如把全局属性变为局部属性): Command + Option + N3.把代码块提取为方法: Command + Option + M4. 把选中代码提取为变量: Command + Option + V5. 把方法内选中代码提取为属性(局部到全局,与 Inline相反): Command + O...

2019-11-20 18:09:03 246

原创 error: failed linking file resources.链接文件资源失败

在自己重新写导入githab上的成功Demon时 报的错首先:先看看自己的布局文件(有引用的布局看是否可以Ctrl到) ---------->解决:重新引用其次:可能是string.xml文件中缺少了正在使用的变量 ---------->解决:把缺失的变量重新定义name一下就行...

2019-07-09 20:08:37 6922

空空如也

空空如也

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

TA关注的人

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