自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

heyzqt

get busy living or get busy dying

  • 博客(49)
  • 资源 (1)
  • 问答 (1)
  • 收藏
  • 关注

原创 JS获取屏幕宽高属性总结

平时在写界面获取屏幕、浏览器宽高时,经常会搞不清楚window、body、screen中的clientWidth、offsetWidth、width的区别,今天做一个总结帮助自己理解。window、document、screen、body、documentElement的关系window是浏览器中JavaScript的顶层对象,所有全局变量与函数都是window对象的成员,而document也是window的对象,表示当前的浏览器载入的网页(DOM树)。比如像window.alert() = alert

2020-11-26 19:40:36 1340

原创 web高仿樊登H5/微信音乐播放悬浮球效果

这两天完成了一个仿樊登 H5 的音乐播放悬浮球效果,这个效果跟微信音乐播放悬浮球的效果也很相似,今天总结一下实现的思路过程(基于 Vue 实现)。先来看看樊登 H5 的效果。再来看看我的实现,挺完美的,哈哈。实现起来也不复杂,主要是一步步想清楚下面的实现步骤:第一步:小球被限制在固定范围内滑动第二步:停止滑动时,小球吸边效果第三步:点击吸边状态下的小球,变换为音频播放控制面板,点击毛玻璃,恢复成小球第四步:背景毛玻璃效果一步步来说。第一步:小球被限制在固定范围内滑动touchm

2020-07-19 15:29:45 1483

原创 微信小程序已支持分享到朋友圈

微信小程序大概本周二也就是7月7日的时候悄悄上线了分享到朋友圈功能,目前还是beta版本。目前小程序分享到朋友圈有以下2个限制:a.仅支持Android平台,ios平台暂不支持b.微信基础库限制2.11.3及以上开发者设置分享小程序到朋友圈,有2种方式:wx.showShareMenu(),支持快速分享到朋友圈使用默认小程序标题,分享图为小程序logo,不可自定义参数。(uni-app已支持)wx.showShareMenu({ menus: ['shareAppMessage'

2020-07-12 18:05:33 752

原创 iPhoneX安全区域(Safe Area)底部小黑条在微信小程序和H5的屏幕适配

最近写小程序时,遇到了 iPhoneX 底部小黑线与内容重叠的问题,实际上是iPhoneX安全区域的适配问题,了解清楚这个问题花了挺多时间的,也实操出了结果,忍不住来总结总结。本文目录前言       · 内容与小黑线重叠情况说明1.安全区域含义2.微信小程序适配iPhoneX底部小黑条(Home Indicator)    ...

2020-03-29 16:58:15 5860 2

原创 MySQL导出CSV文件报错secure-file-priv权限受限mac

MySQL导出文件遇到secure-file-priv报错前两天在电脑上安装了MySQL 8.0.18,在尝试从数据库导出csv文件时,遇到了以下报错:ERROR 1290 (HY000): The MySQL server is running with the --secure-file-priv option so it cannot execute this statements...

2019-11-01 00:05:06 1436

原创 使用RecyclerView实现瀑布流

瀑布流也是个常用的显示控件了,但是在使用时经常遇到一些问题,比如滑动回顶部后出现空隙、item在滑动时乱跳等问题。下面就来说说我怎么实现的瀑布流,并且怎么处理上面所说的这些问题的。我使用了原生控件RecyclerView+StaggeredGridLayoutManager来实现的瀑布流,没有用第三方开源框架。下面以2列的瀑布流为例子开始讲解。因为使用了StaggeredGridLayout...

2019-04-10 01:33:24 636

原创 Glide的override方法和View的setLayoutParams方法设置图片宽高对比

用了很久的Glide,最近在使用Glide3时突然想到一个问题,大家都知道使用Glide的override方法可以重写图片大小。而View的setLayoutParams则可以设置ImageView的大小。代码如下://Glide的override()方法设置图片大小Glide.with(this).load(R.mipmap.mantou).override(500, 500).into(i...

2019-03-31 21:16:18 4492 1

原创 Gradle报错Execution failed for task ':app:transformClassesWithInstantRunVerifierForDebug'.

具体问题:在添加WMRouter后,使用Android Studio的绿三角Run运行项目,一直卡在Task :app:transformClassesWithInstantRunVerifierForDebug FAILED位置,但是直接Build APK又是可以的。运行时,Build报错信息如下:[WMRouter] Transform: start...[WMRouter] ...

2019-03-05 18:41:36 653

原创 Glide+SimplifySpanBuild报错Canvas: trying to use a recycled bitmap

问题描述:在Glide的onResourceReady()方法中,使用SimplifySpanBuild设置TextView为文本和图片混排的样式时,报错Canvas: trying to use a recycled bitmap。问题原因:找了很久,发现是同时使用Glide和SimplifySpanBuild所导致的问题,下面一步步说明。出错代码: Glide.with...

2019-03-01 01:08:34 1080

原创 RecyclerView的Inconsistency detected报错解决办法

最近在又一次遇到RecyclerView的Inconsistency detected报错后,研究了一下,终于清楚了问题所在,以及解决办法。报错模拟:先看一下报错日志能看到最先的报错是IndexOutOfBoundsException,然后在网上搜索Inconsistency detected后,了解到这个问题原因是因为RecyclerView的Adapter内外部数据集不一致所出现的报...

2019-02-26 00:38:37 3704

原创 android.support升级到androidx踩坑记录

年前想着Google老大之前提醒过将项目升级到androidx,所以年前一通操作猛如虎把Android Studio唰唰升级到3.2.1,自然也把gradle升级到gradle-4.10.1-all。没想到这只是开始作死的第一步,gradle升级的痛相信升级过的人都懂。升级完项目后,不出所料的Android Studio呈现满江红的样式,十分酸爽。在我一次次修改,不断clean又build项目...

2019-02-13 21:00:17 12373 1

原创 RecyclerView的超强辅助Graywater——综合实操篇

关于Graywater的系列文章RecyclerView的超强辅助Graywater——理论篇RecyclerView的超强辅助Graywater——基础实操篇RecyclerView的超强辅助Graywater——点击事件RecyclerView的超强辅助Graywater——综合实操篇看到上一篇Graywater文章是11月8日写的,也是拖很久了,这篇是Graywater系列文章...

2019-01-30 12:55:29 290

原创 XML文件设置自定义控件color属性无效,原因ALPHA_8只记录颜色的alpha值

背景因为需要给控件四周添加一层均匀的阴影,而使用CardView给控件所添加的阴影其实不是均匀分布在四周的,而是点光源和自然光组合照射的结果,这种情况下控件底边阴影颜色最深。看图会更清晰:所以重新找其他替代的控件,在Github找到一个给View添加阴影控件shadow-layout能够给控件四周添加均匀阴影。不过在使用的过程中发现了一些问题。遇到的问题ShadowLayout有一个co...

2019-01-19 22:12:34 935 4

原创 CardView属性app:cardUseCompatPadding和app:cardPreventCornerOverlap

CardView继承自FrameLayout布局,常用属性如下:参数类型含义app:cardCornerRadiusfloat设置CardView的圆角半径app:cardElevationfloat设置阴影的深度app:cardBackgroundColorint设置卡片的背景色android:foregroundint设置点击时候的水波...

2019-01-16 23:16:04 6249

原创 Android Device Monitor(DDMS)打开白屏,Hierarchy Viewer不能查看UI视图层级问题解决方法

背景原本想使用Hierarchy Viewer查看一个正式应用的视图层级,但是一打开Android Device Monitor,Android Device Monitor就白屏,无法使用,更不要说进入Hierarchy Viewer了。怎么办?还能怎么办呢,google大法好,一步步解决鸭。遇到的问题和结果Android Device Monitor白屏,无法使用。.bash_pro...

2019-01-13 00:29:40 1732

原创 PopupWindow的显示位置

前段时间在使用PopupWindow时,对PopupWindow的显示位置有一些疑惑,今天整理整理。首先看看PopupWindow显示的效果:可以从动图中看到PopupWindow分别出现在了按钮的左侧、按钮中间和按钮右对齐的位置。使用showAsDropDown(View anchor, int xoff, int yoff)方法就可以满足这三个位置的显示需求。Left PopupWi...

2018-12-30 14:01:52 963

原创 BigDecimal比较数据大小

上周遇到个需求是上传文件的大小不能超过5M,因为想尝试着获取准确值,所以使用了BigDecimal类来计算,而通常使用的float和double在计算时是会丢失精度的。BigDecimal常用来获取精确的计算结果,float和double类型主要是为了科学计算和工程计算而设计的,并不会提供完全精确的结果。 long fileSize1 = 3450; //小于5M ...

2018-12-25 20:41:12 1796

原创 Android P Cleartext HTTP traffic to xxx not permitted 解决办法总结

最近在Android P系统上使用腾讯IM的时候,在聊天界面,发送语音对方能听到,我听不到。发送图片对方能看到,我这里就是一个小框,图片显示不了。打断点调试,错误日志如下:java.io.IOException: Cleartext HTTP traffic to xxx.x.xxx.xx not permitted at com.android.okhttp.HttpHandler$Clea...

2018-12-23 23:25:48 1505 1

原创 RecyclerView的超强辅助Graywater——点击事件

关于Graywater的系列文章RecyclerView的超强辅助Graywater——理论篇RecyclerView的超强辅助Graywater——基础实操篇RecyclerView的超强辅助Graywater——点击事件上一篇写了Graywater的基础使用,但是没讲点击事件,这一篇文章就把点击事件给补充上。还是使用的基础实操篇中的GraywaterPrimaryDemo继续写。...

2018-11-11 15:46:08 265

原创 RecyclerView的超强辅助Graywater——基础实操篇

原本上一篇写完之后就想接着就把实操篇文章给完成了的,但是没想到新需求一来,就加了2周的班,到今天才空下来,才有时间继续完成这篇文章。上一篇讲解了Graywater的一些基础理论知识,这一篇文章将讲解Graywater的基本使用方法,并搭配一个基础Demo。下一篇则会讲解Graywater的进阶用法。注意以下所使用的Graywater类库,非Graywater最新类库,比最新的旧一点,但是使用...

2018-11-06 01:51:50 294

原创 RecyclerView的超强辅助Graywater——理论篇

Graywater是一个什么东西呢?它其实与RecyclerView相关,实际上就是RecyclerView的Adapter,但又不是一个普通的Adapter,Graywater内部经过重新设计,能使复杂的RecyclerView在使用时如丝般顺滑。我将从四个问题来带大家了解什么是Graywater。问题一:Graywater是什么问题二:Graywater特点是什么?问题三:...

2018-10-21 18:25:46 310

原创 RSA算法适配Android P

今天在跑Android P模拟器的时候,应用突然报错。查看错误日志:Caused by: java.lang.RuntimeException: java.lang.Exception: 无此算法继续往上查,无此算法对应我自己设置的NoSuchAlgorithmException异常并且是在KeyFactory keyFactory = KeyFactory.getInstance("R...

2018-10-09 20:40:04 2103 1

原创 Button根据EditText输入状态改变背景颜色

需求Button随EditText输入状态改变颜色有3个不同颜色状态, + EditText未输入时,Button处于不可点击状态 + EditText输入时,Button处于高亮状态 + EditText输入且用户按下按钮,Button –> Pressed状态效果如下: EditText在没有输入时,Button不可点击,为灰色状态 EditText输入后,Bu...

2018-06-12 07:54:07 2186

原创 RecyclerView LinearLayoutManager.findViewByPosition()一直返回null

有一个业务需求是要在onCreate()方法中,使用LinearLayoutManager.findViewByPosition()获得RecyclerView的childview代码如下: @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstan...

2018-06-10 17:50:00 10768 5

原创 Android Studio 3.0.1 gradle编译报错 Error : unable to resolve dependency for app@

在app目录下build.gradle中引用了第三方类库,gradle编译时不断报错,无法resolve第三方类库,或者无法download第三方类库 dependencies { implementation fileTree(include: ['*.jar'], dir: 'libs') implementation 'com.android.support:appco...

2018-06-05 11:43:29 6091 5

原创 Android 8.0系统给第三方apk进行系统签名(未使用Andriod Studio,在Android系统编译环境下签名)

今天组长突然让我给第三方应用系统签名,按照网上搜索的常规方法,没一个奏效,还报错,贼郁闷,最后在龙哥的指导下搞定。现在将方法整理出来,希望对大家有所帮助~首先该应用一定要在AndroidManifest中加入系统级权限android:sharedUserId="android.uid.system"直接安装会报错提示没有系统签名,需要把该应用系统签名Failure [INSTALL_FAILED_...

2018-04-13 20:56:57 6992 8

原创 Android Studio在使用Java 1.8新特性时报错Extension methods are not supported at this language level

StackOverFlow上给出了解决办法:Android Studio: Extension Methods are not supported at this language level新特性需要在N及以上的的系统上才支持,所以需要先修改minSdkVersion的值minSdkVersion = 24然后在app/build.gradle的android节点下添加JAVA 8依赖 c...

2018-04-07 22:00:56 4154

原创 【AOSP输入法】Android TV 7.0添加AOSP输入法(LatinIME)后,编辑文本BACK键返回出现红色下划线的解决办法

问题描述:Android TV默认Leanback Keyboard键盘,使用mm命令将AOSP输入法编译系统后,在使用前两者任一个输入法后按下BACK返回键某些情况下,输入的英文文本始终会出现一个红色下划线(无论拼写对错,而其他语言不会),并且使用Android Studio直接在未将AOSP输入法编译进系统的系统中进行AOSP输入法安装是不会出现红色下划线的。问题分析:红色下划线看起来像是Sp...

2018-02-24 19:11:09 3148

原创 7.0 Android系统修改默认输入法后,切换系统语言时输入法自动切到AOSP的解决办法

Android 7.0设置默认输入法参考下面的文章Android修改默认输入法切换系统语言之后,系统会默认将输入法切换到Andorid Keyboard(AOSP)/frameworks/base/core/java/com/android/internal/inputmethod/InputMethodUtils.javaisSystemImeThatHasSubtypeOf()方法中添加   ...

2018-01-31 19:33:02 6897

原创 【Android ContentProvider 一】关于ContactsContract.CommonDataKinds.Phone.CONTENT_URI的一点理解

一切都要从ContactsContract.CommonDataKinds.Phone.CONTENT_URI说起,前两天

2017-12-15 23:52:24 5666

原创 error: cannot spawn git: No such file or directory问题解决办法

之前在Android Studio上使用git都好好的,这几天不知道抽什么风,一直报错,整的我很是郁闷 报错信息如下:error: cannot spawn : No such file or directoryfatal: unable to fork但是很神奇的一点是Android Studio不能Commit不能Push,但是在对应文件目录下使用Git Bash使用git命令就没有问题,能

2017-10-10 21:04:09 27520 1

原创 MonkeyRunner不是内部或外部命令,也不是可运行的程序的两种解决办法

前两天使用monkeyrunner都还是好好的,今天不知道电脑为啥抽风就运行不了报错“monkeyrunner不是内部或外部命令,也不是可运行的程序或批处理文件。”环境变量也没有问题,并没有修改过。研究了一番发现可能跟我用Android Studio把 SDK Tools从 25.1.3 更新到 26.0.2 版本有关系。更新之后 monkeyrunner.bat 文件的路径发生了改变,跑到了too

2017-08-14 19:12:22 5752 4

原创 android 更新歌曲播放进度条seekbar的三种方法

总结了一下更新歌曲播放进度条的三种方法1. 只使用handler来进行更新 2. 使用计时器Timer+TimerTask 3. 使用线程池ExecutorService 实现后的效果图:下面详细讲一下三种做法方法一 使用handler来更新进度条点击播放按钮,在点击事件中添加此行代码,

2016-05-25 16:13:34 13729 1

转载 使用EditText在不同场景下调用软键盘的总结

原文地址: 使用EditText在不同场景下调用软键盘的总结这几天在做自动弹出与隐藏软键盘,EditText在不同的使用环境下调用的方法是不一样的,找不到通用万能的方法,网上写的那些方法也只能作参考,不通用;这里总结一下我的心得,写出来分享给大家,希望对大家有帮助。1.普通Activity中调用软键盘(下面两种方法都可以用):方法一:WindowManager.La

2016-03-25 16:50:11 465

原创 SQLiteLog : (1) no such column: playTime

这两天在写一个本地音乐播放器,在给歌曲写入playTime(最近播放时间)时,老是报错,错误如下:03-16 11:45:36.890: E/SQLiteLog(25880): (1) no such column: playTime,用模拟器查看数据库表的时候,发现确实缺少playTime列,但在Mp3Info.java(放mp3对象属性的类)中我是写了的。找了很久,终于发现,因为playT

2016-03-16 11:55:41 748

转载 在Bundle中传递自定义的Arraylist<Object>

原文点击这里在用多线程的时候,会需要在Message中传递自己定义的Arraylist但是呢,Messge的数据传递必须要用Bundle所以需要将自定义的ArrayList放入Bundle解决方法是用Bundle.putParcelableArrayList(list)当然不能直接把list放入bundle中,必须经过加工方法如下:Message msg = n

2016-03-14 10:56:05 917

转载 启动activity时,有个一闪而过界面

原文点击这里进入应用时,由于应用的启动Activity都会有默认的theme,所以会跳一下原始界面,才启动我们定义的theme。修改这个问题的方法,就是给应用启动的Activity设置一个空的theme。如下面的例子:联系人启动时的Activity为PeopleActivity ,我们就在manifest文件中设置PeopleActivity 的theme为一个空的theme 

2016-03-14 10:48:51 2104

转载 Eclipse启动不了问题总结

文章一原文点击这里    Eclipse闪退/打不开/无法启动/一闪而过解决方式: 1.通过在命令行中输入“where java”,找到除jdk目录下的所有java相关程序,直接删掉(一般会在C:\WINDOWS\system32下)2.内存不足,打开Eclipse目录下的eclipse.ini,把里面的-Xmx512m改成-Xmx256m

2016-03-14 10:07:00 11836 2

原创 Java杂记2--abstract类与接口

1.对象的上转型对象假如A类是B类的父类,当用子类创建一个对象,并把对象的引用放到父类的对象中。如:A a=new B();或A a;B b=new B();a=b;称a是b的上转型对象有如下特点:(1)上转型对象不能操作子类新增的成员变量,不能调用子类新增的方法。(2)上转型对象可以访问子类继承或隐藏的成员变量,也可调用子类继承的方法或子类重写的方法。

2016-01-09 11:03:18 545

原创 Java杂记1--类与对象

1.类、变量、方法命名遵守下列编程风格:类:1.如果类名使用拉丁字母,那么名字的首字母使用大写,如Hello、Time等。        2.类名最好容易识别、见名知意。当类名由几个单词符合而成时,每个单词的首字母使用大写           如BeijingTime、AmericanGame和HelloChina等。变量:1.一行只声明一个变量,方便给代码增添注释内容

2016-01-07 10:04:08 607

android-async-http-1.4.3.jar

android-async-http-1.4.3.jar

2015-09-19

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

TA关注的人

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