自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(56)
  • 资源 (7)
  • 收藏
  • 关注

转载 ProgressBar高度填充、设置背景颜色和进度条颜色

仅仅记录,方便自己学习查找资料:progressbar设置progressDrawable,用渐变色,不用图片的方式实现。

2024-01-25 16:33:07 824

转载 ConstraintLayout-那些很有用但是你可能不知道的用法

仅仅是记录,方便后面遇到问题自己查找,记录了文章的链接:ConstraintLayout-那些很有用但是你可能不知道的用法_layout_gonemargintop-优快云博客

2024-01-25 11:37:01 68

原创 androidstudio 正则全局替换

替换为postValue形式,即:xxLiveData.postValue(SlideHttpResult.Success(isLeft, true))例如:把项目中所有的xxLiveData.value = SlideHttpResult.Success(isLeft, true)2,.*要用括号括起来,方便和下面的括号里的$1整体替换。小补充:^表示开启正则,$表示结束正则。1,选中右上角的星号,表示开启正则。3,上图中黑色部分,就是预览结果。

2023-12-26 20:23:11 737

转载 apktool静态调试反编译

完成后我们在F:\Android\apktools\dex2jar-2.0目录下就会多了个classes-dex2jar.jar文件,这个就是我们需要的jar文件,接下来就是如何查看java代码了,这里笔者借用一个工具jd-gui(下载链接),下载完解压(这里选择window平台),然后用它打开classes-dex2jar.jar就可以了,如果你的apk经过混淆,那么看到的都是a、b之类的。第一步:把你的apk后缀名改为zip,然后解压后,就会发现有个classes.dex,这里面就是java源码了。

2023-12-21 11:19:14 387

原创 git常用命令总结

一,撤销本地commit的记录,注意是还没有push到远端的奥androidstudio上操作:选中要提交的记录的上一个记录,也就是你想回退到的某个记录。如你提交的第55个commit有问题,想撤回,你就选中第54个记录,然后右键,选择reset current branch to here。在后续的弹框中选择soft即可。几个类型选择区别如下使用 git reset HEAD^ 命令默认的就是mixed模式,此命令表示不删除本地工作空间提交的代码,也即保留对工作区的修改,但是修改未进入暂存区。

2023-11-21 16:23:33 698

转载 低功耗蓝牙相关文章,附Demo

这是转载别人的文章,供自己后期研究学习使用,并附上Demo,方便大家。Demo中有些许问题,大家可以从原文链接中查看。

2023-10-23 09:27:23 65

原创 webstrom2018.1.3激活文章

好不容易找到了一个可以使用的文章,保存下来,以后激活再用(注:我下载的2018版的,19的没有尝试)链接:https://blog.youkuaiyun.com/xr510002594/article/details/81488461...

2019-08-08 09:31:59 333

原创 vue插件收集

工作记录,收集的两篇文章https://www.cnblogs.com/calamus/p/8242446.htmlhttps://www.imooc.com/article/45209

2019-08-01 10:03:21 193

原创 as报错UnsupportedOperationException

解决:当时我的项目中使用了分包,如下图那么在项目的gradle文件中加入dexOptions,修改为如下图:

2017-12-08 11:01:01 401

原创 键盘弹起和消失的监听2中方式

第一种方式:该方式适用于键盘弹起,然后activity被顶上去的情况,因为只有activity被顶上去了,才能计算高度差。如果不能顶上去,那么高度差就为0,所以监听不到键盘的弹起和消失。下面请看代码:第一步 activity 配置  android:windowSoftInputMode="stateAlwaysHidden|adjustResize"第二步 activity 实现 i

2017-04-24 11:20:49 504

原创 PopWindow的showAsDropDown在7.0手机上显示位置错乱问题

只需要重写下面的方法即可:@Overridepublic void showAsDropDown(View anchor) { if(Build.VERSION.SDK_INT == 24) { Rect rect = new Rect(); anchor.getGlobalVisibleRect(rect); int h

2017-04-13 18:02:20 2177 1

原创 命令行签名apk,以及修改签名文件跟debugkey一致,放到build路径下即可运行

下面介绍的是:修改签名文件跟debugkey一致,放到build路径下即可运行:说明:keytool工具在你Eclipse的jdk路径下,一般是拷贝一份你生成的原keystore文件到jdk的bin目录下,通过截图里的命令行来修改完成。注意:签名的时候密码一定不要忘记了,alis别名也要记住了。当应用正式上线的时候,记得要用最开始生成的那个keystore文

2017-03-30 13:47:12 954

原创 AS导入GitHub上下载下来的项目特别慢,卡在Build Gradler

1.AS打开速度慢在Android Studio的bin目录里,打开idea.prooperties文件,添加disable.android.first.run=true再次打开时,启动加快2.AS项目导入慢打开别人的项目时,或者AS升级后,项目打开很慢,这是因为,AS自动检测到gradle和当前不匹配,去官网下载了,所以很慢。手动下载好gradle对应的版本然后设

2017-03-07 16:26:49 2176

转载 AndroidFix热修复例子

背景 当一个App发布之后,突然发现了一个严重bug需要进行紧急修复,这时候公司各方就会忙得焦头烂额:重新打包App、测试、向各个应用市场和渠道换包、提示用户升级、用户下载、覆盖安装。有时候仅仅是为了修改了一行代码,也要付出巨大的成本进行换包和重新发布。这时候就提出一个问题:有没有办法以补丁的方式动态修复紧急Bug,不再需要重新发布App,不再需要用户重新下载,覆盖安装?目

2017-01-06 16:43:08 769

原创 VideoView以及Surface+MediaPlayer播放视频RAW下视频方式

一:首先讲VideoView1videoView的第一种播放方式: videoView.setVideoURI(Uri.parse("android.resource://" + getPackageName() + "/" + R.raw.ceshi));//ceshi是在RAW目录下的mp4视频         videoView.start();2 videoview的第二种

2017-01-03 23:00:14 2829

原创 JS和安卓互相调用以及Scheme协议完成外部链接跳转app指定页面

一: Scheme协议完成外部链接跳转app指定页面什么是 URL Scheme?    android中的scheme是一种页面内跳转协议,是一种非常好的实现机制,通过定义自己的scheme协议,可以非常方便跳转app中的各个页面;通过scheme协议,服务器可以定制化告诉App跳转那个页面,可以通过通知栏消息定制化跳转页面,可以通过H5页面跳转页面等。URL Schem

2016-12-28 11:27:04 17511

原创 调用系统相册上传图片到服务器--OPPO等部分手机上出现短暂的显示桌面问题

主要原因是主体样式设置的问题:这里把appTheme设置一个style即可:        @color/white                false        true出现其他的短暂显示桌面问题,都可以使用上面的方式去解决。

2016-12-24 13:03:34 3506

转载 This app has been built with an incorrect configuration. Please configure your build for VectorDraw

This app has been built with an incorrect configuration. Please configure your build for VectorDrawa运行apk后的异常是:07-26 14:23:27.882: E/AndroidRuntime(8517): Java.lang.RuntimeException: U

2016-12-23 14:42:22 958

原创 判断手机是否有虚拟键盘

/** * 判断底部navigator是否已经显示 * @param windowManager * @return */@TargetApi(Build.VERSION_CODES.JELLY_BEAN_MR1)public static boolean hasSoftKeys(WindowManager windowManager){ Display d = windowM

2016-08-10 16:21:59 1975

原创 图片自适应

WindowManager wm = this.getWindowManager(); int width = wm.getDefaultDisplay().getWidth(); ImageView imageView = new ImageView(mContext); //注释部分是自适应图片的高度。单独的setAdjustVi

2016-08-03 16:03:48 435

原创 动态的添加ImageView到LinearLayout中并居中显示

ImageView imageView = new ImageView(mActivity);imageView.setImageResource(R.mipmap.gengduo);LinearLayout.LayoutParams param = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT,Lin

2016-08-03 15:58:57 10907

原创 动态的创建ImageView,并设置图片自适应

WindowManager wm = this.getWindowManager();int width = wm.getDefaultDisplay().getWidth();ImageView imageView = new ImageView(mContext);imageView.setAdjustViewBounds(true);//设置图片自适应,只是这句话必须结合下面的setM

2016-07-28 14:23:46 4753

原创 AppPlugin:Unsupported

问题如图:具体的解决方法:这个错误的原因是在 工程的build.gradle文件中的gradle 工具配置使用了gradle:+将它classpath 'com.android.tools.build:gradle:+'替换为固定版本的gradle。问题解决 classpath "com.android.tools.build:gradle:2.1.0"

2016-07-28 10:27:24 408

原创 PagerSlidingTabStrip关联viewpager时,viewpager上fragment切换时保持数据状态,以及viewpager默认缓存的去除

一:布局文件为:com.ddhealer.nidmall.view.PagerSlidingTabStrip android:layout_marginLeft="13dp" android:layout_marginRight="13dp" android:id="@+id/pagerSlidingTabStrip" android:layout_widt

2016-07-28 09:10:52 2455 1

原创 MaterialDesign相关效果实现

一:水波纹默认的风格实现    只需要在xml文件中为控件设置背景bacground为:?android:attr/selectableItemBackground二:还有一种默认的风格是:?android:attr/selectableItemBackgroundBorderless三:就是通过drawable来实现了。    该实现方式类似于我们之前经常用的状态选择器。

2016-07-14 13:32:18 433

原创 内存泄漏问题

我们在做android应用开发的时候经常会陷入内存泄漏的问题中,大多数时候内存的泄漏都是由于犯了相同的错误:长期持有了一个Context的引用。“泄漏”意味着你保持着它的一个引用,从而使它不能被垃圾回收机制回收,也就是说当一个对象已经不需要再使用了,本该被回收时,而另外一个正在使用的对象持有它的引用从而导致它不能被回收,这就导致本该被回收的对象不能被回收而停留在堆内存中,内存泄漏就产生了。

2016-07-12 17:08:59 697

原创 属性动画的简单用法收集

有时候我们想让某个控件实时的去执行某个属性动画,而有时候我们需要某个控件像view动画那样在一定的时间范围内做出某个动画效果。那么如何做呢?下面给出相应的方法:一:某个控件在一定的时间范围内做出属性动画效果变化ObjectAnimator objectAnimatorX = ObjectAnimator.ofFloat(iv_02, "translationX", 20);Obj

2016-07-08 10:59:37 400

原创 安卓坐标系

Android坐标系其实就是一个三维坐标,Z轴向上,X轴向右,Y轴向下。一:安卓屏幕区域划分:通过上图我们可以很直观的看到Android对于屏幕的划分定义。下面我们就给出这些区域里常用区域的一些坐标或者度量方式。如下://获取屏幕区域的宽高等尺寸获取DisplayMetrics metrics =new DisplayMetrics();getWindowMan

2016-07-07 10:44:12 588

原创 java除法运算保留两位小数,不只是取整

示例如下:float num= (float)2/3;DecimalFormat df = new DecimalFormat("0.00");//格式化小数String s = df.format(num);//返回的是String类型,如果没有强转为float或者double,那么int型的2除以3,结果就会默认只有整数,没有小数点后的数值。

2016-07-06 17:28:31 5443

原创 自定义ViewGroup时需要注意的细节点

一:构造函数的修改,代码如下:       1 public TimerTextView(Context context) {            // super(context);             this(context,null);          }        public TimerTextView(Context context, Attribut

2016-07-05 17:30:16 1076

原创 安卓序列化对象--包括序列化boolean型变量

安卓序列化有两种方式,分别是实现Serializable接口和Parcelable接口,其中Serializable接口是来自Java中的序列化接口,而Parcelable是Android自带的序列化接口。上述的两种序列化接口都有各自不同的优缺点,我们在实际使用时需根据不同情况而定。1.Serializable在序列化的时候会产生大量的临时变量,从而引起频繁的GC,而相

2016-06-29 10:52:03 2383

原创 Androidstudio的gradle过大内存溢出解决

首先贴出问题:解决思路如下图:

2016-06-28 16:51:45 5479

原创 高德地图定位相关API

一:如果是直接定位到当前位置,可以参考demo中的小蓝点功能。二:如果是根据得到的经纬度信息来定位到具体信息,可使用下面的API       aMap.moveCamera(CameraUpdateFactory.newLatLngZoom(newLatLng(34.341568, 108.940174), 18));// 设置指定的可视区域地图,其中18代表的是缩放级别

2016-06-12 13:56:21 3808

原创 拍照权限导致某些代码在6.0系统上崩溃

过滤掉6.0系统上某个权限崩溃问题思路:     一: 我们需要判断手机的系统版本是否大于6.0,当大于6.0的时候,我们在判断某个权限是否开启了,如果没有开启,则重新去请求权限,代码如下:      int permission = checkSelfPermission(Manifest.permission.READ_EXTERNAL_STORAGE);

2016-06-06 15:07:59 1107

原创 androidstudio中生成百度地图两种AK的方式(debug版和正式版)

1 debug版的SHA1值获取方式:   使用keytool:     第一步:cmd命令行中输入:cd .android 回车     第二部:输入:keytool -list -v -keystore debug.keystore     第三步:输入秘钥库口令:android,然后就可以看到了需要的SHA1值。2 正式版SHA1值获取方式:  创建一个key

2016-06-02 11:47:16 1738

原创 finished with non-zero exit value 2

Error:Execution failed for task ':transformClassesWithDexForDebug'.> com.android.build.api.transform.TransformException: com.android.ide.common.process.ProcessException: org.gradle.process.internal.

2016-05-24 15:08:58 380

原创 Androidstudio安装GsonFormat快速生成实体类插件

方式一:   File ->setting ->Plugins ->Browse 搜索GsonFormat  然后安装插件,重新启动 studio方式二:   首先下载GsonFormat.jar;然后 File ->setting ->Plugins ->install plugin from disk...导入下载GsonFormat  ,然后重新启动

2016-05-19 18:01:21 1578

原创 在studio中遇见 解决Gradle DSL method not found: ‘android()’

解决办法:删掉最外层(工作空间中的buil.gradel  因为AS里只在app层的gradle读取Android版本,放在最外层的gradle是没办法读的 )的build.gradle中的android {    compileSdkVersion 19    buildToolsVersion '21.1.1'}      然后重新刷新就ok了

2016-05-19 17:58:59 379

原创 毛玻璃效果实现(必须api4.0以上)

毛玻璃实现效果如下方法:@SuppressLint("NewApi") public Bitmap blur(Bitmap sentBitmap,Context context,int radius){         Bitmap bitmap = sentBitmap.copy(sentBitmap.getConfig(), true);         final R

2016-05-19 09:43:15 895

原创 as下删除无用的图片

操作路径:然后在弹出的窗体中输入:unused resources,敲回车键然后出现下图:一般都是选择整个工程,也可以选第三个File,然后ok然后等待搜索结果,会在控制台上有提示的。根据提示去删除即可。(为防止as抽风,提示错误而导致误删,建议删除前先备份一份)

2016-05-18 11:30:26 933

反编译工具保存下学习使用

反编译工具保存下学习使用

2023-11-16

mvvm的demo,仅供自己以后学习参考

mvvm的demo,仅供自己以后学习参考

2023-11-16

低功耗蓝牙相关文章,附Demo

低功耗蓝牙相关文章,附Demo

2023-10-23

GridView可添加头布局,且兼容PullToRefreshLayout

本GridView可以模仿ListView的addHeadView方法添加头布局。并且可以完美的兼容嵌入到PullToRefreshLayout刷新框架中,没有bug。绝对比HeaderGridView强。

2016-11-04

AES数据加密demo,包含BASios,net,安卓,E64Decoder和BASE64Encoder对应的jar包

AES数据加密,解密demo,包括ios,net,安卓,拿来直接就能使用,其中安卓直接复制里面的txt文档到自己的项目中创建一个utils即可使用。需要的E64Decoder和BASE64Encoder对应的jar包,我已提供在里面

2016-03-10

扫一扫扫描二维码功能

本demo不同于其他的demo,因为本demo的优点在于实现了扫描二维码的功能,同时代码很少,保证你不用花费太多时间,拿来就能移植到自己的项目中去

2015-07-10

点击两次退出程序

实现点击两次退出程序的功能,可以利用handler消息机制控制boolean型变量的改变和计时两种方式来实现。本demo采用的是hadnler消息机制来实现的。

2015-07-10

拍照并显示

实现了调用系统照相机,并可以裁剪照片(该功能有对应的方法,只是我没有调用而已,用户可以根据自己的需求决定是否调用该方法),或者直接将显示的图片以圆形来显示出来。也可以从相册中获取一个图片。

2015-07-10

自定义百度地图放大和缩小功能

简单的百度地图,并实现了自定义地图放大和缩小的功能。用户下载下来之后,只需要更换包名,并生成自己的AK,替换成自己的AK,即可完美运行。

2015-07-10

极光推送demo

模仿官方的文档,自己做了一个极光推送demo,用户下载下来之后只需要将清单文件中的包名,application路径,以及appKey替换成自己的,即可完美运行

2015-07-10

空空如也

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

TA关注的人

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