Colton Idle
06/01/2023, 9:04 AMAndroidView
with a SurfaceView
If I have an if
statement to show/hide the AndroidView... it renders the first time, but if the if statement flips to false and true again, the AndroidView won't render. 🧵Colton Idle
06/01/2023, 9:07 AM@Composable
fun MyAndroidView() {
AndroidView(
factory = { ctx ->
SurfaceView(ctx).apply {
Log.e("TEST", "apply")
this.holder.addCallback(
object : SurfaceHolder.Callback {
override fun surfaceCreated(holder: SurfaceHolder) {
Log.e("TEST", "created")
}
override fun surfaceChanged(
holder: SurfaceHolder,
format: Int,
width: Int,
height: Int
) {
Log.e("TEST", "changed")
}
override fun surfaceDestroyed(holder: SurfaceHolder) {
Log.e("TEST", "destroyed")
}
})
}
})
}
Colton Idle
06/01/2023, 9:08 AMapply
created
changed
changed
then when my if statement flips to false
destroyed
then when it flips back to true
apply
Why doesn't it get created?!?
At that point if I press a button (like press it down and don't release it) it will go ahead and do
created
changed
changed
Something just feels wrong hereJoel Denke
06/01/2023, 4:23 PMJoel Denke
06/01/2023, 4:27 PMJoel Denke
06/01/2023, 4:29 PMColton Idle
06/01/2023, 5:08 PMJoel Denke
06/01/2023, 5:11 PMColton Idle
06/01/2023, 5:16 PMJoel Denke
06/01/2023, 5:18 PMColton Idle
06/01/2023, 8:16 PMvide
12/20/2024, 2:16 PMColton Idle
12/20/2024, 2:38 PMColton Idle
12/20/2024, 2:39 PMColton Idle
12/20/2024, 2:40 PMvide
12/20/2024, 2:57 PMColton Idle
12/20/2024, 3:33 PMColton Idle
12/20/2024, 3:33 PMColton Idle
12/20/2024, 3:33 PMvide
12/23/2024, 10:05 AMvide
01/07/2025, 9:15 AMvide
01/07/2025, 9:16 AMvide
01/07/2025, 9:16 AMvide
01/07/2025, 9:16 AMvide
01/07/2025, 9:17 AM