2013-05-02 70 views
0

我用自定義的onDraw方法創建了一個列表視圖。我想讓列表視圖的項目出現「聚焦/選中」,所以我在上面畫一條紅線。但在android 2.3手機上滾動列表視圖時,從onDraw方法創建的所有內容突然顯示在listview包含的textviews下。如果你在不滾動列表視圖的情況下觸摸列表視圖,選擇一個項目,然後釋放你的手指,onDraw方法再次正常工作。然而在Android 4手機上,一切都很好。OnDraw在列表視圖上的錯誤

這真的很煩人,並使應用程序在2.3 Android手機上無法使用。 有誰知道爲什麼會發生這種情況?告訴我你是否希望我發佈示例代碼。

+0

不要告訴我們,我們應該告訴您發佈您的代碼。只需發佈它。 – Rayne 2013-05-02 16:23:42

回答

4

我以前有類似的問題,並通過使用dispatchDraw方法解決。將以下內容添加到您的listView類:

@Override 
protected void dispatchDraw(Canvas canvas) { 
    //DO YOUR DRAWING ON UNDER THIS VIEWS CHILDREN 
    super.dispatchDraw(canvas); 
    //DO YOUR DRAWING ON TOP OF THIS VIEWS CHILDREN 
} 
+0

謝謝!我不能投票你的答案,但是當我得到足夠的代表我會的! – user2171062 2013-05-02 17:47:40