android学习
文章平均质量分 84
青竹健
这个作者很懒,什么都没留下…
展开
-
android:scaleType、android:layout_alignBottom、layout_below学习
以前学习比较马虎,对布局属性不是太了解,因此今天看了一个布局,介绍一下里面的三个属性。先说layout_alignBottom与layout_below:android:layout_alignBottom=" @+id/1 " //指的是元素2下边缘与元素1对其,如下图android:layout_below = " @id/1 " //指的是元素2在元素1的下方原创 2015-11-19 14:12:05 · 868 阅读 · 0 评论 -
Android_Service多线程断点下载
Android中实现单线程下载文件是比较容易的,可是要使得自己的应用支持多线程断点下载就要考虑到很多细节了,今天我们一起来探讨一下多线程断点下载时怎么实现的。首先先画一张图说明一下Android中下载文件的大致流程:上面的图介绍的是比较清楚的,我们要下载一个文件,首先需要在Activity中选择需要下载的目标,然后把下载的任务交个Service中(这里为什么要交给Service原创 2016-06-09 18:56:45 · 1843 阅读 · 1 评论 -
Android中进程间通信(IPC)方式总结
IPC为进程间通信或跨进程通信,是指两个进程进行进程间通信的过程。在PC和移动设备上一个进程指的是一个程序或者一个应用,所以我们可以将进程间通信简单理解为不同应用之间的通信,当然这种说法并不严谨。 在Android中,为每一个应用程序都分配了一个独立的虚拟机,或者说每个进程都分配一个独立的虚拟机,不同虚拟机在内存分配上有不同的地址空间,这就导致在不同的虚拟机互相访问数据需要借助其他手原创 2016-06-11 13:18:01 · 6523 阅读 · 1 评论 -
框架模式MVC与MVP在Android中的应用
很多人在开发Android项目时没有考虑过架构模式的问题,以至于随着项目的增大,Activty或者Fragment中代码也会越来越多,导致项目的维护变的越来越复杂。然而在Android中使用比较多的两种框架模式就是MVC和MVP,下面我将分别介绍一下这两种框架模式。一、MVC框架模式 MVC全名是Model View Controller,是模型(model)-视图(view原创 2016-06-22 12:10:43 · 11242 阅读 · 5 评论 -
LruCache源码浅析
移动设备开发中,由于移动设备(手机等)的内存有限,所以使用有效的缓存技术是必要的。android提供来一个缓存工具类LruCache,开发中我们会经常用到,下面我们就具体分析一下LruCache。LruCache缓存数据是采用持有数据的强引用来保存一定数量的数据的。每次用到(获取)一个数据时,这个数据就会被移动(一个保存数据的)队列的头部,当往这个缓存里面加入一个新的数据时,如果这个缓存已经满原创 2016-06-05 16:20:56 · 5102 阅读 · 0 评论 -
java反射机制及在Abdroid的应用
想写一篇比较短的博客,总结一下java反射机制以及Android中的应用,因为博客太长很多人看着会头疼,而且多去重复那些反射机制的具体实现方式也没啥意义,所以想写的简单易懂些,别过段时间自己看着都头疼。如果想了解反射机制的具体实现,网上有很多,可以搜一下。 JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属原创 2016-08-16 18:00:52 · 1650 阅读 · 1 评论 -
Android中你需要知道的(一)
一、Activity的启动过程ActivityManagerService和ActivityStack位于同一个进程中,而ApplicationThread和ActivityThread位于另一个进程中。其中,ActivityManagerService是负责管理Activity的生命周期的,ActivityManagerService还借助ActivityStack是来把所有的Activit原创 2016-09-10 12:16:01 · 1051 阅读 · 0 评论 -
修改Android源码,开启adb的Root权限
adb 的root 权限是在system/core/adb/adb.c 中控制。主要根据ro.secure 以及 ro.debuggable 等system property 来控制。默认即档ro.secure 为0 时,即开启root 权限,为1时再根据ro.debuggable 等选项来确认是否可以用开启root 权限。为此如果要永久性开启adb 的root 权限,有两种修改的方式:1原创 2016-08-31 09:52:07 · 8375 阅读 · 2 评论 -
Fragment提交transaction导致state loss异常
译文链接Fragment transaction commit state lossFragment提交transaction导致state loss异常java.lang.IllegalStateException: Can not perform this action after onSaveInstanceState at android.support.v4.app.翻译 2016-08-31 15:52:16 · 468 阅读 · 0 评论 -
Binder机制
https://github.com/GeniusVJR/LearningNotes/blob/master/Part1/Android/Binder%E6%9C%BA%E5%88%B6.md首先Binder是Android系统进程间通信(IPC)方式之一。Binder使用Client-Server通信方式。Binder框架定义了四个角色:Server,Client,ServiceMa转载 2016-08-23 17:12:53 · 1683 阅读 · 0 评论 -
联动滑动效果及不同Item效果的RecyclerView
这几天项目中做了一个页面滑动效果,今天总结了一个小demo来分享一下,支持滑动时联动效果的布局,以及支持不同Item效果的RecyclerView原创 2017-11-05 16:32:15 · 911 阅读 · 0 评论 -
Android中内存泄露与如何有效避免OOM总结
Android系统为每个应用程序分配的内存有限,当一个应用中产生的内存泄漏比较多时,就难免会导致应用所需要的内存超过这个系统分配的内存限额,这就造成了内存溢出而导致应用Crash。内存泄露的危害:只有一个,那就是虚拟机占用内存过高,导致OOM(内存溢出),程序出错。了解了内存泄漏的原因及影响后,我们需要做的就是掌握常见的内存泄漏,并在以后的Android程序开发中,尽量避免它。原创 2016-06-03 15:09:49 · 5482 阅读 · 1 评论 -
ScrollView嵌套ViewPager滑动冲突的解决
我们在开发过程中,难免会用到ScrollView嵌套ViewPager的情况,比如淘宝商品详情页面。但当我们用普通的ScrollView嵌套ViewPager是,会出现滑动冲突的情况,原因很简单:当我们左右滑动ViewPager时,我们的手指会有一点上下滑动的浮动,而ScrollView监听了上下滑动事件,这就造成滑动冲突。解决办法也很容易,我们只需要重写ScrollView,在ScrollV原创 2016-03-02 23:22:19 · 1288 阅读 · 0 评论 -
Android属性动画完全解析(上),初识属性动画的基本用法
转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/43536355在手机上去实现一些动画效果算是件比较炫酷的事情,因此Android系统在一开始的时候就给我们提供了两种实现动画效果的方式,逐帧动画(frame-by-frame animation)和补间动画(tweened animation)。逐帧动画的工作原理很简单,其实转载 2016-03-30 11:17:07 · 465 阅读 · 0 评论 -
Android属性动画完全解析(中),ValueAnimator和ObjectAnimator的高级用法
转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/43536355大家好,在上一篇文章当中,我们学习了Android属性动画的基本用法,当然也是最常用的一些用法,这些用法足以覆盖我们平时大多情况下的动画需求了。但是,正如上篇文章当中所说到的,属性动画对补间动画进行了很大幅度的改进,之前补间动画可以做到的属性动画也能做到,补间动转载 2016-03-30 11:19:46 · 468 阅读 · 0 评论 -
android页面滑动时,顶部title背景渐变的实现
在淘宝的商品详情页,我们会看到顶部的title背景颜色随着scrollView的上下滑动而渐变,这样的功能在我们应用中会经常用到,今天就来说一下我实现下这种功能方法,当然方法可能比较笨,看到博客的大牛,希望能得到你们的指点。首先先解释一下基本原理:我们的思路是重写ScrollView,实现ScrollView的滑动监听,在ScrollView滑动的过程中,对顶部Title做出相应的处理:看原创 2016-03-05 10:31:29 · 7783 阅读 · 0 评论 -
Android中用户手势检测详述(OnCliskListener、OnTouchListener和GestureDetecter)
以前做项目只是简单应用一些点击事件以及滑动事件,没有系统的学习手势检测,今天特意学习了一下,顺便分享一下,以便于以后的记忆一、先说点击事件:点击事件很简单,我们只要绑定点击事件的监听接口并实现点击事件的监听方法,在onClik方法中进行点击事件的处理即可。如点击事件监听接口OnClickListener、长按事件的监听接口OnLongClickListener等。下面是一个点击事件的简单实原创 2016-03-23 20:24:22 · 1242 阅读 · 0 评论 -
android中Service组件总结
Server是android四大组件之一,它与Activity非常类似,最大的区别就是Activity在前台运行,主要作用于界面的交互,而server是在后台运行的一个服务,它没有界面。Server的创建步骤:(1)定义一个继承Server的子类;(2)在AndroidManifest.xml文件中配置该Server。原创 2015-12-15 22:23:14 · 2173 阅读 · 0 评论 -
BroadcasReceivert总结
一、BroadcasReceivert简介BroadcastReceiver是Android系统的四大组件之一,它适用于接收程序所发出的Broadcast Intent并作出相应的,程序启动BroadcasReceivert只需要两步:1)创建需要启动的BroadcasReceivert的Intent;2)调用Context的sendBroadcast()或sendOrderBro原创 2016-05-11 16:27:09 · 662 阅读 · 0 评论 -
AsyncTask总结
首先明确Android之所以有Handler和AsyncTask,都是为了不阻塞主线程(UI线程),且UI的更新只能在主线程中完成,因此异步处理是不可避免的。 Android为了降低这个开发难度,提供了AsyncTask。AsyncTask就是一个封装过的后台任务类,顾名思义就是异步任务。很多人说AsyncTask的设计主要是为了方便开发者在子线程中更新UI,这种说法其实不对的,As原创 2016-05-10 15:56:56 · 841 阅读 · 0 评论 -
android中利用矢量图VectorDrawable打造酷炫动画
1. 初识矢量图SVG与VectorDrawable位图:有一个一个像素点组成的,放大会失真矢量图:实际是一条path路径,每一个像素点是根据GPU实时计算出来,放大缩小不会失真SVG和Vector的区别:SVG,即Scalable Vector Graphics 矢量图,这种图像格式在前端中已经使用的非常广泛了,详见WIKI:https://en.wikipedia.原创 2017-11-21 11:27:22 · 2481 阅读 · 1 评论