作者bemyangel (天使的羽翼)
看板AndroidDev
标题[问题] 改写SimpleCursorAdapter的bindView问题
时间Fri Jul 19 00:25:04 2013
先简短说明一下为何要改写SimpleCursorAdapter的bindView的原因,
我透过SQLite搜寻资料库抓下来的资料丢进Cursor後再透过我写的一个继承
SimpleCursorAdapter的Adapter把资料给ListView
我想要让资料排列顺序是倒反的,预设情况是先读进来的资料在上面,後来的往下挤
网路搜寻了各种方法,似乎都指向只能透过SQL语言去做Order By的动作,但是我比较想
在Adapter内去做顺序交换的动作,因此我去Git Hub网站
http://ppt.cc/2N26
找到的了SimpleCursorAdapter.java的原始码,而试图想透过改写bindView的内容来
达到我想要的功能,但是我发现他原始的程式码有用到的变数(用protected宣告)
protected int[] mFrom; 与
protected int[] mTo;
,我却不能用super.的方式进行呼叫,不知道是我找到的程式码不对还是这样的呼叫方法
是错误的?
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 219.85.184.112
1F:推 asilzheng:如果你没有重新定义的话,直接用就好了呀 07/19 00:34
我直接用了(其实我是先直接把原始码的bindView整份复制下来使用),但是编译器不认得
mFrom与mTo两个变数
※ 编辑: bemyangel 来自: 219.85.184.112 (07/19 00:39)
※ 编辑: bemyangel 来自: 219.85.184.112 (07/19 00:53)
我重新仔细看过SimpleCursorAdapter.java,他的注解有说明mFrom和mTo应该要是
private的,所以在SDK中会被隐藏..,看样子其实这两个变数不该被修改,
看样子只剩修改SQL语言这个方法了
※ 编辑: bemyangel 来自: 219.85.184.112 (07/19 01:15)
2F:→ Killercat:SQL Language is evil, use ORM instead =P 07/19 12:29
3F:→ Killercat:另外按照你的需求的话 把资料捞出来灌到MatrixCursor 07/19 12:30
4F:→ Killercat:会是比较make sense的做法 07/19 12:30
5F:推 tomap41017:写一个adapter把原本的adapter包起来呢? 07/24 10:27