
android
文章平均质量分 75
kyson123
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
LinearLayout详解四:彻底解决软键盘遮挡输入框的问题
现在讲一下通常的解决方案就是:监听键盘弹出,然后隐藏上面的logo,然后自然而然的下面的也就顶上去了。怎么实现呢,我们只要写一个类继承自LinearLayout即可。原创 2014-05-17 13:50:40 · 2245 阅读 · 2 评论 -
Android从源代码看ListView的重用机制
无论是android还是iOS,列表视图应该是最复杂的控件了,android中的listview从命名可以看出是个一维数组,而iOS中的tableview则是二维数组,但其实需要注意的地方是差不多的,都是重用机制,这是考量你对listview能否掌握的最好的方法。原创 2014-08-10 10:16:23 · 1330 阅读 · 0 评论 -
续说ListView重用之加载图片
在listview中如果每个item都有图片需要下载的话,我们就得考虑由于大量图片加载而导致的oom(out of memory)问题。一个典型的做法是,下载图片的时候看看缓存中有没有该图片,如果缓存中没有,就从sd卡中读取,如果sd卡中还没有,再去服务器下载,下载下来的图片先放在sd卡中,并放到缓存中。如此周而复始。这其中涉及到的就是缓存怎么设计,比较通用的做法就是使用LRU算法来缓存图片,先在手机端设置一个内存区域用于缓存图片,然后将我们下载的图片以键值对的形式丢进去,这样我们就能取到相应的图片啦,原创 2014-08-20 23:14:37 · 1281 阅读 · 0 评论 -
android:两个应用之间如何传值之activity
每个进程都有一段独立的内存空间,所以两个进程之间传值本身就是效率不高,比较耗时的过程。线程相较于进程的优点在于共享一段内存,因此传值速度比进程快,最快的当然莫过于同一个线程了。这些知识点是大家了解程序传值的前提。原创 2014-07-14 19:32:36 · 3219 阅读 · 0 评论 -
LinearLayout详解一:LinearLayout的简介
打蛇要打七寸,做事情要做要害,看东西要看本质。LinearLayout的本质,也就是他的最上层的类,其实是View类原创 2014-05-17 09:41:50 · 3759 阅读 · 0 评论 -
LinearLayout详解二:LinearLayout的创建过程以及状态全程解析
如果大家不知道怎么下载View.class的源代码,或者说懒得去下载(因为源代码确实比较大,大概有10G)的话,教大家几个取巧的办法:1.直接在google中输入“android view.java”即可。这种方法成功率非常高,一般android的比较重要的类都能搜到。2.给大家提供一个人家用于放源码的的git:git@gitorious.org:rowboat/frameworks-base.git 大家自己去clone一下。(什么!你Y的居然连git都不会用!服了,好吧,请继续往下看)。3登录到这原创 2014-05-17 11:48:39 · 1424 阅读 · 1 评论 -
详解fragment(一):从源代码看fragment的生命周期
这里果然是有一个数组ArrayList在管理,ArrayList是啥?是动态数组,这就意味着他是可以动态添加的,不是栈,所以里面的Fragments可以随便获取以及插入。原创 2014-05-19 20:46:50 · 2370 阅读 · 1 评论 -
LinearLayout详解三:LayoutInflater创建View过程分析
这就是inflate的作用,他就是用来解析xml并显示到屏幕的,至于解析的代码我这边就不多做阐述了,毕竟已经超越了我们的主题太远。我们还是看inflate是如何给解析的xml分配内存,并添加到view上的吧!原创 2014-05-17 12:44:09 · 1895 阅读 · 5 评论 -
论Android中的值传递
众所周知,根据mvc设计模式,数据是要通过model来传递的,从一个activity(以下简称A)到另外一个activity(以下简称B)如果要传值的话我们可以将model放到intent中(也可以不放),然后在B创建之后取得相应的值;反之,如果从B回传值给A的话,也是可行的,只不过要在A的onActivityResult中接收相应的值。这几种方法各有优缺点,大家自己可以结合实际情况来选择。原创 2015-04-12 10:53:07 · 1548 阅读 · 1 评论