【发布时间】:2020-04-16 14:04:22
【问题描述】:
在将具有 targetSDK 28 的应用程序迁移到 29 时,Android Studio(3.6.2) 在编译代码时开始出错。目标 SDK 设置为 28,代码编译良好。有人对此有想法吗?是否有任何严格的规则适用于相同的 android studio 和 Kotlin 版本的这种行为变化?
下面是代码:
private fun generateInternalCanvas(w: Int, h: Int) {
bitmap?.recycle()
if (w > 0 && h > 0) {
bitmap = Bitmap.createBitmap(w, h, Bitmap.Config.ARGB_8888)
bitmap?.eraseColor(Color.TRANSPARENT)
internalCanvas = Canvas(bitmap)
}
}
当我为 internalCanvass 赋值时,我遇到了上述错误。
谢谢,
吉姆。
【问题讨论】:
-
我认为'bitmp'是一个变量,你在你的应用程序中定义。给你看代码!
-
我已经粘贴了代码。我可以用 bitmap?.let { internalCanvas = Canvas(it) } 解决这个问题,但我想知道为什么 android studio 在 targetSDKVersion 更改后抛出错误?谢谢。
标签: android android-studio kotlin