File tree Expand file tree Collapse file tree 1 file changed +14
-2
lines changed
src/com/qozix/tileview/samples Expand file tree Collapse file tree 1 file changed +14
-2
lines changed Original file line number Diff line number Diff line change 6
6
import android .graphics .Rect ;
7
7
import android .view .View ;
8
8
9
+ import com .qozix .os .AsyncTask ;
9
10
import com .qozix .tileview .detail .DetailLevel ;
10
11
import com .qozix .tileview .detail .DetailLevelEventListener ;
11
12
import com .qozix .tileview .detail .DetailManager ;
@@ -21,6 +22,7 @@ public class SampleManager extends View implements DetailLevelEventListener {
21
22
22
23
private Bitmap bitmap ;
23
24
private String lastFileName ;
25
+ private String currentFileName ;
24
26
25
27
public SampleManager ( Context context , DetailManager dm ) {
26
28
@@ -42,14 +44,24 @@ public void clear(){
42
44
lastFileName = null ;
43
45
}
44
46
47
+ private class BitmapDecodeTask implements Runnable {
48
+ @ Override
49
+ public void run () {
50
+ bitmap = decoder .decode (currentFileName , getContext ());
51
+ postInvalidate ();
52
+ }
53
+ }
54
+
55
+ private BitmapDecodeTask decodeTask = new BitmapDecodeTask ();
56
+
45
57
public void update () {
46
58
DetailLevel detailLevel = detailManager .getCurrentDetailLevel ();
47
59
if ( detailLevel != null ) {
48
60
String fileName = detailLevel .getDownsample ();
49
61
if ( fileName != null ) {
50
62
if ( !fileName .equals ( lastFileName ) ) {
51
- bitmap = decoder . decode ( fileName , getContext () ) ;
52
- invalidate ( );
63
+ currentFileName = fileName ;
64
+ AsyncTask . execute ( decodeTask );
53
65
}
54
66
}
55
67
lastFileName = fileName ;
You can’t perform that action at this time.
0 commit comments