瀏覽代碼

Added small delay to updateDimensions to ensure that renderbox is loaded. (#250)

flutter-beta
Julian Steenbakker 5 年之前
父節點
當前提交
f940d6811b
沒有發現已知的金鑰在資料庫的簽署中 GPG 金鑰 ID: 16E437C7A3D94250
共有 1 個檔案被更改,包括 2 行新增5 行删除
  1. +2
    -5
      lib/src/qr_code_scanner.dart

+ 2
- 5
lib/src/qr_code_scanner.dart 查看文件

@@ -212,7 +212,6 @@ class QRViewController {


Stream<Barcode> get scannedDataStream => _scanUpdateController.stream; Stream<Barcode> get scannedDataStream => _scanUpdateController.stream;


static bool _firstRun = true;
SystemFeatures _features; SystemFeatures _features;
bool _hasPermissions; bool _hasPermissions;


@@ -320,10 +319,8 @@ class QRViewController {
static Future<void> updateDimensions(GlobalKey key, MethodChannel channel, static Future<void> updateDimensions(GlobalKey key, MethodChannel channel,
{QrScannerOverlayShape overlay}) async { {QrScannerOverlayShape overlay}) async {
if (defaultTargetPlatform == TargetPlatform.iOS) { if (defaultTargetPlatform == TargetPlatform.iOS) {
if (_firstRun) {
_firstRun = false;
await Future.delayed(Duration(milliseconds: 300));
}
// Add small delay to ensure the renderbox is loaded
await Future.delayed(Duration(milliseconds: 100));
final RenderBox renderBox = key.currentContext.findRenderObject(); final RenderBox renderBox = key.currentContext.findRenderObject();
try { try {
await channel.invokeMethod('setDimensions', { await channel.invokeMethod('setDimensions', {


Loading…
取消
儲存