2011-04-11 47 views
0

我有一個listview,填充了一個simplecursoradapter,我忽略了。我有一個查詢返回一個遊標,它是一堆項目和他們的分隔符以我需要它們顯示的正確順序。我有一切正確顯示,但我希望分隔符不可點擊。我想弄清楚如何重寫isEnabled()方法,以便它爲我的分隔符返回false。 我的問題是如何知道我的項目的位置或我可以比較傳遞給此方法的int以便知道它是否是分隔符?我想也許是光標的_id列,但是因爲我從兩個不同的列中爲項目和類別(我的分隔符)提取數據,所以_id是混亂的,有時候有重複的數字。另外,當這些行被繪製時,這會對我造成問題嗎?我最終會得到的行繪製在行相同_ids而不是我期望的行的地方嗎?我嘗試了更長的列表來查看滾動時是否會出現這種情況,但到目前爲止我沒有遇到問題。isEnabled分離器與simpleCursorAdapter?

回答

0

isEnabled()方法中傳遞的int是您需要指定它是否爲分隔符的列表的行位置。

我的問題是我怎麼知道我的項目

可以使用moveToPosition,以確定哪些數據庫的排它這個位置指 位置?

我能請比較 爲了傳遞給此方法來 知道,如果它是一個分離的詮釋?

這完全取決於你如何查詢數據庫,並確定哪些行分隔符

而且,這會導致對我來說 問題時的行繪製?我會結束 獲取行的地方 行有相同的_ids而不是行 我期望?

NO

+0

謝謝,現在看來一切正常。所以我的印象是,cursorAdapters所需的_id列將用於將listview行映射到我的遊標行。遊標是否自動創建自己的行ID?我只是對這是如何工作感興趣。謝謝你的幫助! – 2011-04-11 07:51:59

+0

實際上沒有遊標創建的行標識符。當您進行數據庫查詢時,可以選擇指定排序順序(如果指定了null,則應用某個默認值)。這些行以這種方式插入到遊標中 – pankajagarwal 2011-04-11 09:16:17