ListView
是 Android 应用开发中,常见的视图类组件,其普及程度差不多与 HTML 中的Table
一样。此类组件的本质是将数据,也就是Model,表现出现,但其本身不负责维护数据,属于“来料加工”。
那么ListView
又是怎么获得数据渠道呢?答案就是Adapter
,其顾名思义就是“适配器”。就像笔记本加入市电,需要用电源适配器一样,原始数据不大可能直接显示给用户,就需要一个数据适配器,转换成视图所支持的样子。
到这里,数据已经可以展现给用户了,但是还面临一个问题,即如果数据更新了,视图能不能将新数据替换旧数据?在 Android 中,掌控数据、充当 Controller 角色的是Activity
,它应该是知道数据有变化的,同时,它还持有 View
和Adapter
。
[ Read More » ]
9 1 月, 2013 in
Software | tags:
Android |
1 Comment
数码管工作是靠点亮内部的发光二极管,一个数码管通常有10个引脚,除了7个小段和1个小数点外,还有1个共同端,剩余1个引脚没有用,即第3引脚和第8引脚是连在一起的。TX-1C实验板上使用的数码管都是共阴极。
多个数码管一体时,公共端是独立的,即“位选”是可独立控制的,“段选”则是连接在一起的。因此,这就需要两个锁存器进行分别控制。TX-1C 的位选通是 P2^7,段选通是 P2^6。在同一时刻,位选通的所有数码管显示的数字都是一样的,这种显示方式称为静态显示。
[ Read More » ]
28 10 月, 2012 in
Electronics | tags:
MSC-51 |
No Comments
从大学到现在,我对计算机的认识一直很浮浅,特别是使用 Java 这些年,虚拟机确实带来了移植的便利,但是却屏蔽了底层,割断了我与底层硬件的联系。当我决定展开计算机组成之旅的时候,我打定主意要从简单入手,但很快意识到自己面临一个问题,如何寻找一个最简单的计算机?64位普及的年代,即便在垃圾堆里,也难寻得386的踪迹。
认识 MCS51 单片机是无心插柳柳成荫,2011年我从爱果联盟了解到了 WiFi-Robot 项目,于是花了一笔不菲的钱来组装这个大玩具。但是,很快我觉得无趣了,凡具备了中学生的阅读理解能力,都能组装、掌控它。作为一个常常自命不凡的程序员,我更加对自己编写代码控制小车产生了兴趣。碰巧它的控制板采用的正是51单片机。
[ Read More » ]
长假后的第二天,上头传来了加强代码质量的“旨意”,目标是每一次代码提交都得先给 leader 审核。那么如何落实呢?先导出 patch 文件,然后 email 给责任人,收到对方明确的通过意见后,才能执行 commit。–这种方法似乎很类似 Linux Kernel 的情形,我倒也不反对。
但如此一来,审核环节就成了一个瓶颈,整个的开发行为也就变得串行化。最后方案初步调整为,在 SVN 仓库新开一个分支,专门用于开发人员的提交,开发人员修改后发出 patch 给同事审核,通过后提交到分支。再由 leader 逐个审核分支提交,将认为 OK 的提交合并到主干。这样,主干上始终保持着被认为是合格的代码。
[ Read More » ]
9 10 月, 2012 in
Software | tags:
Git,
MacPorts |
7 Comments
一群人聚在了一起,若是没有共同的目标,则必然是东拉西扯;倘若目标不统一,各有各的 Hamlet,则会演变成各立山头。作为士兵,最担心的是是,主帅说你只管冲,我说停你再停,那么这场战斗将是一场绝望的末日审判。
居于庙堂的人居高临下,指点江山,好生得意。然而草野之间的人们未必就能与其同心同德,达成一致。历代的末代君王们,以及打了败仗的将军们,莫不感慨时不待我,却似乎没有觉到自己其实是孤家寡人。
[ Read More » ]
29 9 月, 2012 in
Thinking |
No Comments