自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Android Studio文件编码问题: 编码xxxx的不可映射字符

Gradle工程默认使用UTF-8编码,如果文件的编码与工程的不一致(如导入Eclipse工程时)会导致编译错误: 在Android Studio的Preference里面可以改Gradle工程的编码,但一般不建议这么伤筋动骨。更常见的是改需要的文件的编码,点击如果的编码选项,选择相应的编码,如UTF-8,可能会弹出对话框,选择Convert可以将文件编码改为UTF-8:

2017-05-17 15:50:55 2056

原创 Volley中的PoolingByteArrayOutputStream

Volley中的PoolingByteArrayOutputStream在启动Dalvik虚拟机的时候,我们可以分别通过-Xms、-Xmx和-XX:HeapGrowthLimit三个选项来指定上述三个值,以上三个值分别表示表示:Starting Size: Dalvik虚拟机启动的时候,会先分配一块初始的堆内存给虚拟机使用。Growth Limit: 是系统给每一个程序的最大堆上限,超过这个上限,程

2017-04-28 17:36:46 438

原创 TweenAnimation和PropertyAnimation

TweenAnimation和PropertyAnimationTweenAnimation通过改变canvas的martix来实现动画,在View的draw过程中调用Animation.getTransformation获得动画PropertyAnimation直接设置View的属性值,因为随PropertyAnimation添加了很多属性值的setter/getter,但实际上通过改变can

2017-04-28 17:34:08 428

原创 RecyclerView和ListView子控件缓存要点

RecyclerView和ListView子控件缓存要点RecyclerView和ListView都是用来展示大量同类型数据的,其中RecyclerView可以说是ListView的加强版,两者在布局layout方式和view缓存的做法上基本一致。关于两者缓存方式的详细对比已经有珠玉在前,有文章分析的很详细 Android ListView与RecyclerView对比浅析–缓存机制。这里只关注缓存

2017-04-20 10:09:15 342

原创 SurfaceView在宿主窗口“挖洞”过程要点

SurfaceView在宿主窗口“挖洞”过程要点Created with Raphaël 2.1.0SurfaceViewSurfaceViewViewGroupViewGroupViewRootImplViewRootImpl1.onAttachedToWindow2.requestTransparentRegion3.requestTransparentRegion4.performTraver

2017-04-20 10:06:34 2847

原创 Android的触摸事件传递分析

Android的触摸事件传递分析Android的触摸事件总是传递到Activity的根视图DecorView,DecorView再进行分发。 在一组连续的触摸事件中, MotionEvent.ACTION_DOWN代表TouchEvent的开始,传递进DecorView.dispatchTouchEvent,并且后续的所有MotionEvent都将传递进DecorView.dispatchTouc

2017-04-20 10:02:55 340

原创 bindService的BIND_AUTO_CREATE和BIND_WAIVE_PRIORITY要点

bindService(Intent service, ServiceConnection conn, int flags)方法有flag参数,可以控制需要绑定的Service的行为和运行模式,其中BIND_AUTO_CREATE和BIND_WAIVE_PRIORITY两个flag在Ice Cream Sandwich也就是Android4.0版本前后有一些区别,如下图:BIND_AUTO_CREA

2017-04-19 08:18:51 11256 2

原创 Java注解简介

一、作用: 1. 标记,用于告诉编译器一些信息 2. 编译时动态处理,如动态生成代码 3. 运行时动态处理,如得到注解信息二、Annotation 分类 1、标准 Annotation,Override, Deprecated, SuppressWarnings 标准 Annotation 是指 Java 自带的几个 Annotation,上面三个分别表示重写函数,不鼓励使用(有更好方式、

2017-04-19 08:03:43 236

原创 Java父类与接口方法重名的分析

今天翻《Think in Java》复习方法的重写Override与重载Overload,想起方法不能通过抛出不同的异常实现重载,例如下面这样不能通过编译:class BlindException extends Exception {}class IllEyeException extends Exception {}abstract class Human { //编译器会报错:see(

2017-04-19 07:39:15 2279

原创 Java静态导入static import

Java静态导入static importimport static这个特性在JDK1.5首次出现,一般称为静态导入,用法如下:import static package.identifier.ClassName.*使用了上面的import static后,ClassName类型的静态成员(包括静态成员变量和静态方法)就被引入到当前命名空间,这样的话在调用ClassName类型的静态成员变量、方法时

2017-04-19 07:36:56 889

原创 Glide学习笔记

Glide学习笔记Glide的典型用法,摘自github主页: // For a simple view: @Override public void onCreate(Bundle savedInstanceState) { ... ImageView imageView = (ImageView) findViewById(R.id.my_image_vie

2017-04-19 00:01:26 258

原创 iOS改变控件形状常用方法性能分析

iOS改变控件形状常用方法性能分析在iOS开发中有时要控制控件的形状,比如显示为圆形。熟悉iOS绘制的朋友第一反应大都是用Core Graphics/Quartz 2D的提供的方式裁剪CGContext画布等,这当然没错,但在不复杂的应用场景,可能会出现杀鸡用牛刀的情况,甚至Core Graphics性能还不如其他简单的方法。 之前在做显示圆形图片的需求时看到一个方法:let maskPath =

2016-12-07 20:27:13 674

原创 iOS 9出现错误Applications are expected to have a root view controller at the end of application launch

iOS 9出现错误Applications are expected to have a root view controller at the end of application launch导致无法运行今天在xcode7上试了一个老项目,装到iOS9出现闪退然后提示这个 Applications are expected to have a root view controller at t

2016-07-26 22:16:21 416

原创 stored property "text" without initial value prevents synthesized initializers

swift开发时有可能会遇到这样的错误提示class ARandom{ var number: Int = 0 var text: String}stored property “text” without initial value prevents synthesized initializers看了下文档,有这样的解释: *Classes and structures mu

2016-07-26 21:56:33 1854

空空如也

空空如也

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

TA关注的人

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