Browse Source

Merge pull request #223 from deltachat/fix_broken_qr-code_layout

fix layout in profile view if the QR code can't be generated (#192)
björn petersen 5 years ago
parent
commit
5860f81b26
1 changed files with 12 additions and 11 deletions
  1. 12 11
      deltachat-ios/Controller/NewProfileViewController.swift

+ 12 - 11
deltachat-ios/Controller/NewProfileViewController.swift

@@ -238,6 +238,7 @@ class NewProfileViewController: UIViewController, QrCodeReaderDelegate {
         label.font = UIFont.systemFont(ofSize: 14)
         return label
     }
+    
     private func createQRCodeScannerButton() -> UIView {
         let btn = UIButton.init(type: UIButton.ButtonType.system)
         btn.translatesAutoresizingMaskIntoConstraints = false
@@ -253,23 +254,23 @@ class NewProfileViewController: UIViewController, QrCodeReaderDelegate {
     }
 
     private func createQRCodeView() -> UIView {
+        let width: CGFloat = 130
+        let frame = CGRect(origin: .zero, size: .init(width: width, height: width))
+        var imageView: UIView
         if let fingerprint = self.fingerprint {
-            let width: CGFloat = 130
-
-            let frame = CGRect(origin: .zero, size: .init(width: width, height: width))
-            let imageView = QRCodeView(frame: frame)
-            imageView.generateCode(
+            imageView = QRCodeView(frame: frame)
+            (imageView as! QRCodeView).generateCode(
                 fingerprint,
                 foregroundColor: .darkText,
                 backgroundColor: .white
             )
-            imageView.translatesAutoresizingMaskIntoConstraints = false
-            imageView.widthAnchor.constraint(equalToConstant: width).isActive = true
-            imageView.heightAnchor.constraint(equalToConstant: width).isActive = true
-            imageView.translatesAutoresizingMaskIntoConstraints = false
-            return imageView
+        } else {
+            imageView = UIImageView()
         }
-        return UIImageView()
+        imageView.translatesAutoresizingMaskIntoConstraints = false
+        imageView.widthAnchor.constraint(equalToConstant: width).isActive = true
+        imageView.heightAnchor.constraint(equalToConstant: width).isActive = true
+        return imageView
     }
 
     private func createContactCell() -> UIView {