随笔分类 -  Android

摘要:平时开发过程中我们通过android studio编写完成android项目之后直接点击 Run ‘app’就可以在build/outputs/apk生成可以在android设备中安装的apk文件了,那么整个android源码的构建过程是怎么样的呢? 我们可以根据Google官方提供的流程图来具体了 阅读全文
posted @ 2019-02-21 17:47 土金 阅读(1012) 评论(0) 推荐(0) 编辑
摘要:*** FileProvider只能为你指定的目录下files生成content URI。通过属性paths,在xml文件中指定它的内存区域和路径。例如,下面的paths告诉FileProvider,打算为你的私有文件images/子目录请求content URIs。至少一个请求子元素。 <path 阅读全文
posted @ 2018-10-12 16:13 土金 阅读(2087) 评论(0) 推荐(0) 编辑
摘要:ViewGroup默认情况下,出于性能考虑,会被设置成WILL_NOT_DROW,这样ondraw就不会被执行了, 如果我们想重写一个ViewGroup的onDraw()方法,有两种方法: 1、构造函数中,给ViewGroup设置一个颜色; 2、构造函数中,调用setVillNOtDraw(fals 阅读全文
posted @ 2017-03-23 10:59 土金 阅读(1359) 评论(0) 推荐(0) 编辑
摘要:在Android开发中,内存泄漏是比较常见的问题,有过一些Android编程经历的童鞋应该都遇到过,但为什么会出现内存泄漏呢?内存泄漏又有什么影响呢? 在Android程序开发中,当一个对象已经不需要再使用了,本该被回收时,而另外一个正在使用的对象持有它的引用从而导致它不能被回收,这就导致本该被回收 阅读全文
posted @ 2017-03-22 10:52 土金 阅读(189) 评论(0) 推荐(0) 编辑
摘要:Dagger是为Android和Java平台提供的一个完全静态的,在编译时进行依赖注入的框架,原来是由Square公司维护,现在由Google维护。 我们知道Dagger是一个依赖注入的框架,那么什么是依赖注入呢? 我们在activity中有可能会用到很多很多的类,这些类要在activity中进行实 阅读全文
posted @ 2017-03-09 16:21 土金 阅读(1215) 评论(0) 推荐(0) 编辑
摘要:LeakCanary Android 和 Java 内存泄露检测。 “A small leak will sink a great ship.” - Benjamin Franklin 千里之堤, 毁于蚁穴。 -- 《韩非子·喻老》 demo 一个非常简单的 LeakCanary demo: htt 阅读全文
posted @ 2017-03-06 10:59 土金 阅读(229) 评论(0) 推荐(0) 编辑
摘要:requestLayout 当我们动态移动一个View的位置,或者View的大小、形状发生了变化的时候,我们可以在view中调用这个方法,即: 1 view.requestLayout(); 那么该方法的作用是什么呢? 从方法名字可以知道,“请求布局”,那就是说,如果调用了这个方法,那么对于一个子V 阅读全文
posted @ 2017-02-03 10:08 土金 阅读(598) 评论(0) 推荐(0) 编辑
摘要:1. 缓存 DiskLruCache Java实现基于LRU的磁盘缓存 DiskLruCache Java实现基于LRU的磁盘缓存 2.图片加载 Android Universal Image Loader 一个强大的加载,缓存,展示图片的库 Picasso 一个强大的图片下载与缓存的库 Fresc 阅读全文
posted @ 2017-01-11 14:24 土金 阅读(518) 评论(0) 推荐(0) 编辑
摘要:原来在Eclipse中获取SHA1或者MD5,在IDE界面上就可以查找到。 切换到Android Studio后,如何查看呢?找了半天没找到。那就老办法命令行。 第一步、打开Android Studio的Tools->Open Terminal...(新版本已经调整了位置,如下图所示) 第二步、输入 阅读全文
posted @ 2017-01-06 10:26 土金 阅读(14881) 评论(1) 推荐(0) 编辑
摘要:开发中很常见的一个问题,项目中的listview不仅仅是简单的文字,常常需要自己定义listview,自己的Adapter去继承BaseAdapter,在adapter中按照需求进行编写,问题就出现了,可能会发生点击每一个item的时候没有反应,无法获取的焦点。原因多半是由于在你自己定义的Item中 阅读全文
posted @ 2016-12-30 17:55 土金 阅读(373) 评论(0) 推荐(0) 编辑
摘要:1 背景还记得前面《Android应用setContentView与LayoutInflater加载解析机制源码分析》这篇文章吗?我们有分析到Activity中界面加载显示的基本流程原理,记不记得最终分析结果就是下面的关系:看见没有,如上图中id为content的内容就是整个View树的结构,所以对... 阅读全文
posted @ 2015-08-27 16:44 土金 阅读(281) 评论(0) 推荐(0) 编辑
摘要:类path是一个封装的几何学路径包括直线,二次曲线,三次曲线。它可以通过函数canvas.drawPath(path, paint)画出来,可以通过填充方式或者画线方式(由paint的style决定),也可以设置cliping或者把text画在path上边Path.Direction用来指定添加到p... 阅读全文
posted @ 2015-01-21 15:24 土金 阅读(1007) 评论(0) 推荐(0) 编辑
摘要:Android里Scroller类是为了实现View平滑滚动的一个Helper类。通常在自定义的View时使用,在View中定义一个私有成员mScroller = new Scroller(context)。设置mScroller滚动的位置时,并不会导致View的滚动,通常是用mScroller记录... 阅读全文
posted @ 2015-01-15 14:28 土金 阅读(344) 评论(0) 推荐(0) 编辑
摘要:1、首先介绍Region类Region,中文意思即区域的意思,它表示的是canvas图层上的某一块封闭的区域。[java] view plaincopyprint?/**构造方法*/publicRegion()//创建一个空的区域 publicRegion(Regionregion)//拷贝一个re... 阅读全文
posted @ 2014-12-31 17:03 土金 阅读(821) 评论(0) 推荐(0) 编辑
摘要:View view = getCurrentFocus();//获得当前焦点所在的view.Java代码 finalint[]location=newint[2]; view.getLocationOnScreen(location);[java] view plaincopyfinalint... 阅读全文
posted @ 2014-12-08 16:13 土金 阅读(5564) 评论(0) 推荐(0) 编辑
摘要:文章参照自:http://stackoverflow.com/questions/2298208/how-to-discover-memory-usage-of-my-application-in-android#2299813像Linux这种现代操作系统的内存使用是很复杂的,因此很难准确的知道你的... 阅读全文
posted @ 2014-11-17 21:32 土金 阅读(857) 评论(0) 推荐(0) 编辑
摘要:1.下面的Xfermode子类可以改变这种行为:AvoidXfermode 指定了一个颜色和容差,强制Paint避免在它上面绘图(或者只在它上面绘图)。PixelXorXfermode 当覆盖已有的颜色时,应用一个简单的像素XOR操作。PorterDuffXfermode 这是一个非常强大的转换模式... 阅读全文
posted @ 2014-11-05 16:01 土金 阅读(662) 评论(0) 推荐(0) 编辑
摘要:使用MaskFilterMaskFilter类可以为Paint分配边缘效果。对MaskFilter的扩展可以对一个Paint边缘的alpha通道应用转换。Android包含了下面几种MaskFilter:BlurMaskFilter 指定了一个模糊的样式和半径来处理Paint的边缘。EmbossMa... 阅读全文
posted @ 2014-11-04 13:50 土金 阅读(247) 评论(0) 推荐(0) 编辑
摘要:String str = "Hello";canvas.drawText( str , x , y , paint);//1. 粗略计算文字宽度Log.d(TAG, "measureText=" + paint.measureText(str));//2. 计算文字所在矩形,可以得到宽高Rect r... 阅读全文
posted @ 2014-10-23 17:19 土金 阅读(631) 评论(0) 推荐(0) 编辑
摘要:Animation从总体来说可以分为两类:1.Tweened Animations:该类提供了旋转,移动,伸展,淡入淡出等效果Tweened Animations也有四种类型:1. Alpha:淡入淡出效果2. Scale:缩放效果3. Rotate:旋转效果4. Translate:移动效果设置动... 阅读全文
posted @ 2014-10-10 13:57 土金 阅读(300) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示