瀏覽代碼

Used global context to calculate pixels

flutter-beta
Alexander Tihomirov 5 年之前
父節點
當前提交
e4fdc6d9d9
共有 2 個文件被更改,包括 4 次插入3 次删除
  1. +3
    -2
      android/src/main/kotlin/net/touchcapture/qr/flutterqr/QRView.kt
  2. +1
    -1
      android/src/main/kotlin/net/touchcapture/qr/flutterqr/QRViewFactory.kt

+ 3
- 2
android/src/main/kotlin/net/touchcapture/qr/flutterqr/QRView.kt 查看文件

@@ -3,6 +3,7 @@ package net.touchcapture.qr.flutterqr
import android.Manifest
import android.app.Activity
import android.app.Application
import android.content.Context
import android.content.pm.PackageManager
import android.hardware.Camera.CameraInfo
import android.os.Build
@@ -21,7 +22,7 @@ import io.flutter.plugin.common.PluginRegistry
import io.flutter.plugin.platform.PlatformView


class QRView(messenger: BinaryMessenger,private val id: Int, private val params: HashMap<String, Any>) :
class QRView(private val context: Context, messenger: BinaryMessenger, private val id: Int, private val params: HashMap<String, Any>) :
PlatformView, MethodChannel.MethodCallHandler, PluginRegistry.RequestPermissionsResultListener {

private var isTorchOn: Boolean = false
@@ -257,7 +258,7 @@ class QRView(messenger: BinaryMessenger,private val id: Int, private val params:
barcodeView?.framingRectSize = Size(convertDpToPixels(dpScanAreaWidth), convertDpToPixels(dpScanAreaHeight))
}

private fun convertDpToPixels(dp: Double) = (dp * barcodeView!!.context.resources.displayMetrics.density).toInt()
private fun convertDpToPixels(dp: Double) = (dp * context.resources.displayMetrics.density).toInt()

private fun hasCameraPermission(): Boolean {
return permissionGranted ||


+ 1
- 1
android/src/main/kotlin/net/touchcapture/qr/flutterqr/QRViewFactory.kt 查看文件

@@ -12,7 +12,7 @@ class QRViewFactory(private val messenger: BinaryMessenger) :

override fun create(context: Context, id: Int, args: Any?): PlatformView {
val params = args as HashMap<String, Any>
return QRView(messenger, id, params)
return QRView(context, messenger, id, params)
}

}

Loading…
取消
儲存