提问者:小点点

如何在Android上以编程方式使用Kotlin拍摄屏幕截图


我搜索过如何在android上以编程方式拍摄屏幕截图,但我找到的答案是在Java(我不明白)。

请给出Kotlin的解决方案。


共1个答案

匿名用户

测试一下

  class MainActivity : AppCompatActivity() {

override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    setContentView(R.layout.activity_main)
    val constraintLayout: ConstraintLayout = findViewById(R.id.container)
    getScreenShot(constraintLayout)
}

private fun getScreenShot(view: View): Bitmap {
    val returnedBitmap = Bitmap.createBitmap(view.width, view.height, Bitmap.Config.ARGB_8888)
    val canvas = Canvas(returnedBitmap)
    val bgDrawable = view.background
    if (bgDrawable != null) bgDrawable.draw(canvas)
    else canvas.drawColor(Color.WHITE)
    view.draw(canvas)
    return returnedBitmap
}
}