D先生的博客

Python、java、web前端学习笔记

RecyclerView问题:java.lang.IndexOutOfBoundsException: Inconsistency detected. Invalid view holder adap

写在前面 在使用RecyclerView中出现了一个问题,如下图 解决办法: 我们在使用RecycxlerView时,通常先回设置一个LayoutManager 我们的问题出现在LayoutManager的onLayoutChildren方法中,我们只要在onLayoutChildre...

2018-07-16 14:50:47

阅读数 352

评论数 1

Android程序制作自己Log日志收集系统

写在前面 在我们的代码中,通常会用try{}catch来捕获能够预料到的一些异常,但是,通常情况下, 我们的代码都会出现无法预料到异常信息,我们怎样去捕获到这些异常,并上传到自己的服务器来分析修bug呢? UncaughtExceptionHandler接口 Java为我们提供了一个机制...

2018-04-27 11:23:11

阅读数 1349

评论数 0

Fragment实现懒加载(草稿)

/** * * 实现懒加载的Fragment */ public abstract class BaseLazyFragment extends Fragment { protected View mRootView; protected Context mContext;...

2018-02-01 15:47:35

阅读数 89

评论数 0

Dagger2高级使用(自定义Scope、SubComponent、Lazy与Provider)

自定义Scope 我们知道component的dependencies与component自身的scope不能相同,即组件之间的scope不同 意思就是当我们写了一个componentA,同时通过dependencies引用了另一个componentB 如下面代码所示 @Component...

2018-01-24 16:25:44

阅读数 690

评论数 0

Dagger2 的模块化实现 以及常见问题总结

简述 当我们在项目中使用Dagger2的时候,如果某个类 需要在项目的很多地方被引用到,比如UserInfo这个类,那么我们需要为它单独创建一个Module,来提供UserInfo的实例对象, 代码描述 下面的这个类UserManager的构造方法中,需要传入UserInfo这个类实例对...

2018-01-23 11:24:54

阅读数 414

评论数 1

Android使用ttf字体库替代替图片

写在前面 我们知道Android中,有各种不同尺寸的屏幕,所以,就需要多套UI图片来进行手机的适配,这样,又会造成apk过大,所以,所以,使用字体文件来替换掉UI图片也属于APK瘦身的一种方式,本篇文章将介绍字体图标库的使用。 SVG图片获取 阿里巴巴提供了一个图标库Iconfont,我...

2018-01-16 17:59:21

阅读数 2480

评论数 0

Android中使用SVG矢量图

写在前面 Google在Android 5.X中提供了两个新API来帮助支持SVG: VectorDrawable AnimatedVectorDrawable 什么是SVG: SVG (Scalable Vector Graphics, 可伸缩矢量图形) 是W3C 推出的一种...

2018-01-16 16:30:00

阅读数 557

评论数 0

方法数超过65536,DexIndexOverflowException的解决

异常概述在项目中,遇到这样一个问题,程序直接编译运行到模拟器上没问题,但是在打包签名时,提示失败,然后报下面的异常 解决方式首相在module的gradle中配置compile 'com.android.support:multidex:1.0.1'android { compileSd...

2017-11-23 10:08:19

阅读数 158

评论数 0

Android自定义控件 - View的绘制

概述在现实生活中,如果我们要去画一个图形,必须先知道他的大小和位置,同样,在Android中,在绘制一个View前,也必须要先去测量将要绘制的View的大小,这个测量过程在onMeasure()方法中进行。MeasureSpec类Android系统给我们提供了一个强大的类MeasureSpec,通...

2017-07-26 09:35:44

阅读数 216

评论数 0

Genymotion模拟器连接不上本地tomcat的解决方法

当我们启动tomcat,在本地浏览器访问http://localhost:8080/,可以得到正确访问到tomcat主页。 但是,但我们在Genymotion模拟器中的浏览器中输入http://10.0.2.2:8080/去访问tomcat主页时,却不能访问到。 解决方法我们打开模拟器网络配置...

2017-07-20 09:57:29

阅读数 278

评论数 0

Activity界面启动和结束动画(仿微信界面切换效果)

如何给界面设置切换动画 通常,我们可以通过overridePendingTransition(int enterAnim, int exitAnim)来给Activity设置界面切换效果,但是,这个方法如果要做Activity界面移出屏幕的动画,则必须要先finish掉Activity界面。所以...

2017-07-19 10:01:29

阅读数 6921

评论数 3

Android如何高效的加载图片(4)--- 图片占用内存的管理

我们在做完图片的缓存后,还需要做一些具体的操作来帮助垃圾回收和图片的复用。 不同的版本有不同的方式,在本篇文章中,主要针对Android 3.0及以上版本进行详细介绍。在Android2.3.3及以下版本中内存的管理在在Android2.3.3及以下版本中,用recycle() 方法帮助垃圾回收...

2017-07-13 17:32:42

阅读数 201

评论数 0

Android如何高效的加载图片(3)--- 图片的缓存

如果我们要不止一次去加载很多的图片,像在ListView、GridView、ViewPager等控件中加载图片。本篇将为大家介绍怎样在在内存和磁盘中缓存图片。内存缓存(Memory Cache)内存缓存可以让我们快速的访问图片,我们通常使用LruCache类来进行内存缓存,它可以将一个最近应用的对...

2017-07-13 16:26:21

阅读数 173

评论数 0

Android如何高效的加载图片(2)---在ui线程中处理Bitmaps

前面我们总结了Androd中如何去加载尺寸比较大的图片。现在我们需要考虑的问题是当我们从磁盘或者网络中加载图片时,由于磁盘的读取速度或者网速的原因导致话费很长的时间去加载。如果吧这些耗时的代码放在ui线程,会导致ANR异常。 所以。这篇文章中,我们将讨论使用AsyncTask在后台线程中去加载图...

2017-07-11 16:20:55

阅读数 1089

评论数 2

Android如何高效的加载图片(1)---加载大尺寸图片

完美的去加载bitamap,不但可以增加用户体验度,还能避免内存溢出。加载bitmap,一部小心就会导致应用crash.报出下面的异常。java.lang.OutofMemoryError: bitmap size exceeds VM budget.如果需要加载图片比较大。很容易造成内存溢出,如...

2017-07-11 11:50:56

阅读数 404

评论数 0

Android设备拍照详解

清单文件中的配置利用Android设备拍照,首先需要在清单文件中有如下配置<manifest ... > <uses-feature android:name="android.hardware.camera" an...

2017-07-07 15:43:57

阅读数 157

评论数 0

Android文件存储全攻略

一个File对象可用于读写大量的数据,比如,它可以用来保存图片和从网络获取到的数据。选择内部(Internal)或外部(External)存储所有的Android设备都有俩个文件存储位置,“内部(Internal)”和“外部(External)”。Internal storage(内部存储)使用介...

2017-07-06 18:10:18

阅读数 246

评论数 0

RecyclerView的item根布局中的Layout_xxx属性不起作用

问题:我们在使用RecyclerView的过程中,发现在item的根不具中设置一些Layout_XXX属性,没有起到作用,比如layout_width=”match_parent”。下面是我的RecyclerView的item的布局文件<?xml version="1.0"...

2017-07-06 10:54:07

阅读数 587

评论数 0

适配Android N (7.0)需要解决的问题汇总

java.lang.SecurityException: MODE_WORLD_READABLE no longer supported异常的原因与解决 MODE_WORLD_READABLE文件权限存在安全隐患,所以谷歌先把它标为过时。然后完全的移除掉。 MODE_WORLD_READABL...

2017-06-27 16:50:45

阅读数 3981

评论数 0

ScrollView与其子控件事件冲突的解决,以及怎样去禁止ScrollView的惯性滑动

Bug情景说明需求是界面中展示一个条目列表,条目最上面是一张图片,下拉后,图片由模糊变清晰,最后我选用了用ScrollView去解决,以下是最终界面 这是用一个ScrollView来做的: 问题1:ScrollView与其子控件之间的触摸事件冲突的决绝ScrollView与其子控件事件冲突的...

2017-06-14 22:08:22

阅读数 2205

评论数 0

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