作者Nienchin (ㄚ年)
看板AndroidDev
標題請問兩個函數postInvalidate() 和 Invalidate()
時間Thu Mar 29 02:13:23 2012
如題
我想請問這兩個函數怎麼使用,
找了很多網路上文章
但小弟我不材 不懂它們的意思
如 :
http://www.guan8.net/Java/463321.html 這篇所說
所以 想請教高手們如何使用這兩個函數
以及,何時可以使用這兩個函數
我目前是想在surfaceView中畫圖
然而想要手指接觸螢幕那時候就要把圖畫顯示出來
應該是要利用 這兩個函式去更新圖案這樣對嘛!?
但是 我又看到文章說 surfaceView 必須在unlock時才會把圖案顯示出來
如此 我該如何作比較好???
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.45.225.252
1F:推 shietsd:可以利用 onTouchEvent 來更新圖案 03/29 20:20
2F:→ Killercat:surfaceView通常不用管invalidate的問題 03/31 19:18
3F:→ Killercat:直接用lock選canvas, 在unlock的時候就會重畫了 03/31 19:18
4F:→ Killercat:除非你想要invalidate的範圍不是全螢幕.. 03/31 19:19
5F:→ Nienchin:那請問有辦法一邊畫的時候,就直接unlock嘛? 04/01 04:04
6F:→ Killercat:會有這疑問我覺得也許先查一下什麼叫做buffered drawing 04/01 12:19
7F:→ Killercat:會比較好(汗),基本上這是比較牽涉到顯示卡記憶體怎麼 04/01 12:19
8F:→ Killercat:顯示到螢幕上的問題,比較不容易三言兩語說清楚 04/01 12:19
9F:→ Killercat:基本上,正常情況下不應該一邊畫一邊unlock 04/01 12:20
10F:→ Killercat:每次的繪畫都應該是以frame為單位 一次畫完 04/01 12:20
11F:→ Killercat:android的lock/unlock系統在手機上是以單buffer的方式 04/01 12:20
12F:→ Killercat:實作,不過我記得後面的平板是以double buffer來作 04/01 12:21
13F:→ Killercat:總之,這是計算機圖學的東西,比較難解釋 04/01 12:21