android重要理解
文章平均质量分 72
ChatHello
梦想就是梦想,虽遥不可及,但总能望见...
展开
-
开发拓展之单例设计模式
单例模式最要关心的则是对象创建的次数以及何时被创建。 Singleton模式可以是很简单的,它的全部只需要一个类就可以完成(看看这章可怜的UML图)。但是如果在“对象创建的次数以及何时被创建”这两点上较真起来,Singleton模式可以相当的复杂,比头五种模式加起来还复杂,譬如涉及到DCL双锁检测(double checked locking)的讨论、涉及到多个类加载器(ClassLoad原创 2016-08-17 20:39:22 · 438 阅读 · 0 评论 -
对Activity生命周期和加载模式的理解
当Activity位于Android应用中运行,它的活动状态由Android以Activity栈的形式管理,当前活动的Activity位于栈顶,随着不同应用的运行,每个Activity都有可能从活动状态转入非活动状态,也可能从非活动状态转入活动状态.Activity会经过4种状态:(1)运行状态:当前Activity位于前台,用户可见,可以获得焦点.(2)暂停状态:其他Activity原创 2016-12-13 11:23:16 · 512 阅读 · 0 评论 -
Android之Handler机制
我在学习和使用handler的时候,在Android开发艺术探索本书中学习研究,说到handler机制,就要设计到5个类,Handler、MessageQueue、Looper、Thread、还有一个Message;Message是消息,它由MessageQueue统一列队,由Handler处理。Handler是处理者,他负责发送和处理Message消息。MessageQueue指消息原创 2016-08-17 20:56:45 · 344 阅读 · 0 评论 -
Android之多线程
多线程:一.传统线程机制:什么是线程?线程就是一条程序的执行线索,一行代码一行代码按时间一直向下执行,所执行的路线就是一条线程。如果这是还有另一个线索同时执行,也就是两个代码并行执行,这就是多线程。创建线程的两种方式?创建线程的第一种方式:继承Thread类步骤:(1)定义类继承Thread(2)覆写Thread类中的run方法(3)调用线程的start方法,该方法两个作用原创 2016-08-17 20:54:44 · 326 阅读 · 0 评论 -
Android之异步任务加载网络数据
对异步任务加载网络数据的回答:在Android中提供了一个异步任务的类AsyncTask,简单来说,这个类中的任务是运行在后台线程中的,并可以将结果放到UI线程中进行处理,它定义了三种泛型,分别是Params、Progress和Result,分别表示请求的参数、任务的进度和获得的结果数据。 我之前总结了使用异步任务的原因有三点:1)是因为AsyncTask使用了线程池技术,而且其中原创 2016-08-17 20:53:41 · 2382 阅读 · 0 评论 -
Android之屏幕适配问题
对屏幕适配问题的回答:Android用两种常规的属性来分类设备屏幕:即尺寸和像素密度。作为我们开发者,我们在设计应用的时候必须要考虑到我们所做的应用会被安装到不同屏幕尺寸和像素密度的设备上。因此,我们的应用应当包含可选的资源来优化应用外观,以便支持不同尺寸和像素密度的设备。有四种广义上的尺寸:small、normal、large、xlarge。同样也有四种广义的像素密度:low (ld原创 2016-08-17 20:52:25 · 679 阅读 · 0 评论 -
Android之百度地图问题
对百度地图问题的回答:百度地图api里大概有30个类,api的链接是http://developer.baidu.com/map/ ,通过这个api可以轻松的获取百度服务和数据,构建功能丰富、交互性强的地图应用程序.这个api为我们开发者提供了本地搜索、路线规划、地图定位灯等数据的服务。要使用百度地图api,首先要申请它的API key,申请这个key是为了相对百度系统唯一标识这个应用原创 2016-08-17 20:51:28 · 1451 阅读 · 0 评论 -
Android之事件分发机制
View的事件分发 :对于事件分发机制,举个简单的例子,在一个Activity中只有一个按钮,如果我们想给这个按钮注册一个点击事件,只需要调用setOnClickListener方法,这样在onClick方法里面写实现的代码,就可以在按钮被点击的时候执行.我们再给这个按钮添加一个touch事件,只需要调用setOnTouchListener方法,onTouch方法里能做的事情比onClick要原创 2016-08-17 20:50:37 · 379 阅读 · 0 评论 -
Android的加载大图片引起内存问题之OOM异常
大图片所引起的内存问题(oom):在我们android开发中,一个应用使用的内存大小是有限制的.在应用中,如果大量的使用bitmap就很可能导致内存溢出的问题。比如我在曾经的一个项目中遇到的问题:要使用Gallery来显示多张不同的图片,在给Gallery的每个Item设置图片的时候,想到Bitmap如果不手动的recycle,系统是不会回收它所在的资源的,因为android为了提高效率,bi原创 2016-08-17 20:48:42 · 587 阅读 · 0 评论 -
Android的ListView之优化2
ListView优化2:如果一个listView不做任何的优化,而且有很多的条目,当我们快速的拖动listView的界面的时候,就不断的GCGC(Garbage Collection )垃圾回收,当GC到某个时候就会(OOM)outofmemory内存溢出,应用程序也就会随之挂掉,产生这个问题的原因是什么呢?我们知道listView的特点是每产生一个条目就会调用一次getView方法,如果我们原创 2016-08-17 20:46:08 · 326 阅读 · 0 评论 -
Android的ListView之优化1
熟练掌握listview优化,获取网络图片异步加载,分批加载,分页显示,图片缓存等优化方式ListView的工作原理首先来了解一下ListView的工作原理(可参见http://mobile.51cto.com/abased-410889.htm),如图:ListView 针对每个item,要求 adapter “返回一个视图” (getView),也就是说ListView在开始绘制的原创 2016-08-17 20:44:44 · 393 阅读 · 0 评论 -
android线程池
android线程池的理解是在开发中能够大幅度提升开发技术和效率.转载 2016-08-07 20:51:37 · 668 阅读 · 2 评论 -
ListView底部添加加载更多按钮实现数据分页
在我们的实际项目中,数据应该说是很多的,我们的ListView不可能一下子把数据全部加载进来,我们可以当滚动条滚动到ListView的底部的时候,给一个更多的提示,当我们点击它即加载下一页的数据,相当与我们的分页效果,参考网上的东西,写了一个小小的demo,并总结了一些知识点,功能图如下: 源代码下载地址:掌握知识点:1)自定义Adapter,将数据和List转载 2016-08-10 17:56:57 · 1036 阅读 · 0 评论 -
简单明了的认识MVC与MVP
1,什么是MVC?M:业务层和模型层,相当与javabean和我们的业务请求代码。V: 视图层,对应于android的layout.xml布局文件C:控制层,对应于Activity中对于UI的各种操作在实际开发中,请求的业务代码往往被丢在Activity里面,而layout.xml的布局文件只能提供默认的UI设置,所以视图层的变化也被丢到Activity里面;Activit原创 2016-12-07 17:31:45 · 399 阅读 · 0 评论