File tree Expand file tree Collapse file tree 1 file changed +7
-20
lines changed
imageloader/src/main/java/com/tomclaw/imageloader/util Expand file tree Collapse file tree 1 file changed +7
-20
lines changed Original file line number Diff line number Diff line change @@ -2,7 +2,6 @@ package com.tomclaw.imageloader.util
22
33import android.view.ViewGroup.LayoutParams.MATCH_PARENT
44import android.view.ViewGroup.LayoutParams.WRAP_CONTENT
5- import android.view.ViewTreeObserver
65import android.widget.ImageView
76import com.tomclaw.imageloader.core.ViewHolder
87import com.tomclaw.imageloader.core.ViewSize
@@ -13,29 +12,17 @@ class ImageViewHolder(private val imageView: ImageView) : ViewHolder<ImageView>
1312 override fun getSize (): ViewSize {
1413 optSize()?.let { return it }
1514
16- var viewSize = ViewSize (0 , 0 )
1715 val latch = CountDownLatch (1 )
18-
19- val preDrawListener = object : ViewTreeObserver .OnPreDrawListener {
20- private var isResumed = false
21-
22- override fun onPreDraw (): Boolean {
23- val size = optSize()
24- if (size != null ) {
25- viewSize = size
26- imageView.viewTreeObserver.removeOnPreDrawListener(this )
27-
28- if (! isResumed) {
29- isResumed = true
30- latch.countDown()
31- }
32- }
33- return true
16+ var viewSize = ViewSize (0 , 0 )
17+ imageView.post {
18+ val size = optSize()
19+ if (size != null ) {
20+ viewSize = size
3421 }
22+ latch.countDown()
3523 }
36- imageView.viewTreeObserver.addOnPreDrawListener(preDrawListener)
37-
3824 latch.await()
25+
3926 return viewSize
4027 }
4128
You can’t perform that action at this time.
0 commit comments