Skip to content
This repository has been archived by the owner on Jul 1, 2022. It is now read-only.

Commit

Permalink
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'release/3.0.3' test
Browse files Browse the repository at this point in the history
AlexLittlejohn authored and Guillaume Bellut committed Oct 16, 2019
2 parents 848775c + fa37fbd commit 3d556d8
Showing 17 changed files with 126 additions and 91 deletions.
2 changes: 1 addition & 1 deletion ALCameraViewController.podspec
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
Pod::Spec.new do |spec|
spec.name = "ALCameraViewController"
spec.version = "3.0.2"
spec.version = "3.0.3"
spec.summary = "A camera view controller with custom image picker and image cropping."
spec.source = { :git => "https://github.com/AlexLittlejohn/ALCameraViewController.git", :tag => spec.version.to_s }
spec.requires_arc = true
10 changes: 6 additions & 4 deletions ALCameraViewController.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
@@ -9,6 +9,7 @@
/* Begin PBXBuildFile section */
1F3C56291F701CA7009667E9 /* CroppingParameters.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7AC96FA11F5B5166003E53F4 /* CroppingParameters.swift */; };
7AC96FA21F5B5166003E53F4 /* CroppingParameters.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7AC96FA11F5B5166003E53F4 /* CroppingParameters.swift */; };
7C6AF41F1FB340CA006CB4ED /* LaunchScreen.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7C6AF41E1FB340CA006CB4ED /* LaunchScreen.xib */; };
C40665441C73A47C00EB9751 /* SingleImageSaver.swift in Sources */ = {isa = PBXBuildFile; fileRef = C40665431C73A47C00EB9751 /* SingleImageSaver.swift */; };
C40665461C73A94100EB9751 /* CameraGlobals.swift in Sources */ = {isa = PBXBuildFile; fileRef = C40665451C73A94100EB9751 /* CameraGlobals.swift */; };
C40665481C73B72D00EB9751 /* SingleImageFetcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = C40665471C73B72D00EB9751 /* SingleImageFetcher.swift */; };
@@ -61,6 +62,7 @@

/* Begin PBXFileReference section */
7AC96FA11F5B5166003E53F4 /* CroppingParameters.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CroppingParameters.swift; sourceTree = "<group>"; };
7C6AF41E1FB340CA006CB4ED /* LaunchScreen.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = LaunchScreen.xib; sourceTree = "<group>"; };
C40665431C73A47C00EB9751 /* SingleImageSaver.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SingleImageSaver.swift; sourceTree = "<group>"; };
C40665451C73A94100EB9751 /* CameraGlobals.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CameraGlobals.swift; sourceTree = "<group>"; };
C40665471C73B72D00EB9751 /* SingleImageFetcher.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SingleImageFetcher.swift; sourceTree = "<group>"; };
@@ -196,6 +198,7 @@
FAF058421B31618D008E5592 /* Supporting Files */ = {
isa = PBXGroup;
children = (
7C6AF41E1FB340CA006CB4ED /* LaunchScreen.xib */,
FAF0584B1B31618D008E5592 /* Images.xcassets */,
FAF058431B31618D008E5592 /* Info.plist */,
);
@@ -322,6 +325,7 @@
files = (
FA52EE0B1B44129B00E16B6F /* ViewController.xib in Resources */,
FA8231381B3BF8F700A837BE /* CameraView.strings in Resources */,
7C6AF41F1FB340CA006CB4ED /* LaunchScreen.xib in Resources */,
FA5FA3451B3AFEB300497C62 /* CameraViewAssets.xcassets in Resources */,
FAF0584C1B31618D008E5592 /* Images.xcassets in Resources */,
FA778A411B8319D8005807E7 /* image.jpg in Resources */,
@@ -543,11 +547,10 @@
isa = XCBuildConfiguration;
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage;
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
DEVELOPMENT_TEAM = 2466624KEK;
INFOPLIST_FILE = "Example/Supporting Files/Info.plist";
IPHONEOS_DEPLOYMENT_TARGET = 8.0;
IPHONEOS_DEPLOYMENT_TARGET = 9.0;
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
PRODUCT_BUNDLE_IDENTIFIER = com.alx.zero.CameraViewController;
PRODUCT_NAME = "$(TARGET_NAME)";
@@ -560,11 +563,10 @@
isa = XCBuildConfiguration;
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage;
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
DEVELOPMENT_TEAM = 2466624KEK;
INFOPLIST_FILE = "Example/Supporting Files/Info.plist";
IPHONEOS_DEPLOYMENT_TARGET = 8.0;
IPHONEOS_DEPLOYMENT_TARGET = 9.0;
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
PRODUCT_BUNDLE_IDENTIFIER = com.alx.zero.CameraViewController;
PRODUCT_NAME = "$(TARGET_NAME)";
Original file line number Diff line number Diff line change
@@ -46,10 +46,10 @@ extension CameraViewController {

let attribute : NSLayoutAttribute = {
switch statusBarOrientation {
case .portrait: return .bottom
case .landscapeRight: return .right
case .landscapeLeft: return .left
default: return .top
case .portrait: return .bottomMargin
case .landscapeRight: return .rightMargin
case .landscapeLeft: return .leftMargin
default: return .topMargin
}
}()

@@ -60,7 +60,7 @@ extension CameraViewController {
toItem: view,
attribute: attribute,
multiplier: 1.0,
constant: attribute == .right || attribute == .bottom ? -8 : 8)
constant: -8)
view.addConstraint(cameraButtonEdgeConstraint!)
}

@@ -401,7 +401,7 @@ extension CameraViewController {
view.autoRemoveConstraint(flashButtonEdgeConstraint)

let constraintRight = statusBarOrientation == .portrait || statusBarOrientation == .landscapeRight
let attribute : NSLayoutAttribute = constraintRight ? .top : .bottom
let attribute : NSLayoutAttribute = constraintRight ? .topMargin : .bottomMargin

flashButtonEdgeConstraint = NSLayoutConstraint(
item: flashButton,
34 changes: 14 additions & 20 deletions ALCameraViewController/ViewController/ConfirmViewController.swift
Original file line number Diff line number Diff line change
@@ -106,7 +106,6 @@ public class ConfirmViewController: UIViewController, UIScrollViewDelegate {
scrollView.minimumZoomScale = scale
scrollView.zoomScale = scale
centerScrollViewContents()
centerImageViewOnRotate()
}

public override func viewWillTransition(to size: CGSize, with coordinator: UIViewControllerTransitionCoordinator) {
@@ -163,21 +162,13 @@ public class ConfirmViewController: UIViewController, UIScrollViewDelegate {
}

guard let image = imageView.image else {
return 1
return 1
}

let scaleWidth = _size.width / image.size.width
let scaleHeight = _size.height / image.size.height

var scale: CGFloat

if croppingParameters.isEnabled {
scale = max(scaleWidth, scaleHeight)
} else {
scale = min(scaleWidth, scaleHeight)
}

return scale

return min(scaleWidth, scaleHeight)
}

private func calculateScrollViewInsets(_ frame: CGRect) -> UIEdgeInsets {
@@ -318,14 +309,17 @@ public class ConfirmViewController: UIViewController, UIScrollViewDelegate {
y: cropOverlay.frame.origin.y + cropOverlay.outterGap,
width: cropOverlay.frame.size.width - 2 * cropOverlay.outterGap,
height: cropOverlay.frame.size.height - 2 * cropOverlay.outterGap)
cropRect.origin.x += scrollView.contentOffset.x
cropRect.origin.y += scrollView.contentOffset.y

let normalizedX = cropRect.origin.x / imageView.frame.width
let normalizedY = cropRect.origin.y / imageView.frame.height

let normalizedWidth = cropRect.width / imageView.frame.width
let normalizedHeight = cropRect.height / imageView.frame.height
cropRect.origin.x += scrollView.contentOffset.x - imageView.frame.origin.x
cropRect.origin.y += scrollView.contentOffset.y - imageView.frame.origin.y

let normalizedX = max(0, cropRect.origin.x / imageView.frame.width)
let normalizedY = max(0, cropRect.origin.y / imageView.frame.height)

let extraWidth = min(0, cropRect.origin.x)
let extraHeight = min(0, cropRect.origin.y)

let normalizedWidth = min(1, (cropRect.width + extraWidth) / imageView.frame.width)
let normalizedHeight = min(1, (cropRect.height + extraHeight) / imageView.frame.height)

return CGRect(x: normalizedX, y: normalizedY, width: normalizedWidth, height: normalizedHeight)
}
Original file line number Diff line number Diff line change
@@ -1,5 +1,15 @@
{
"images" : [
{
"idiom" : "iphone",
"size" : "20x20",
"scale" : "2x"
},
{
"idiom" : "iphone",
"size" : "20x20",
"scale" : "3x"
},
{
"size" : "29x29",
"idiom" : "iphone",
@@ -25,8 +35,8 @@
"scale" : "3x"
},
{
"idiom" : "iphone",
"size" : "60x60",
"idiom" : "iphone",
"filename" : "[email protected]",
"scale" : "2x"
},
@@ -35,10 +45,15 @@
"idiom" : "iphone",
"filename" : "[email protected]",
"scale" : "3x"
},
{
"idiom" : "ios-marketing",
"size" : "1024x1024",
"scale" : "1x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}
}
6 changes: 6 additions & 0 deletions Example/Supporting Files/Images.xcassets/Contents.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"info" : {
"version" : 1,
"author" : "xcode"
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"idiom" : "universal",
"filename" : "[email protected]",
"scale" : "2x"
},
{
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

This file was deleted.

Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
2 changes: 2 additions & 0 deletions Example/Supporting Files/Info.plist
Original file line number Diff line number Diff line change
@@ -26,6 +26,8 @@
<string>For Science</string>
<key>NSPhotoLibraryUsageDescription</key>
<string>For Science</string>
<key>UILaunchStoryboardName</key>
<string>LaunchScreen</string>
<key>UIRequiredDeviceCapabilities</key>
<array>
<string>armv7</string>
34 changes: 34 additions & 0 deletions Example/Supporting Files/LaunchScreen.xib
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="13529" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" colorMatched="YES">
<device id="retina4_7" orientation="portrait">
<adaptation id="fullscreen"/>
</device>
<dependencies>
<deployment identifier="iOS"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="13527"/>
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
</dependencies>
<objects>
<placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner"/>
<placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
<view contentMode="scaleToFill" id="iN0-l3-epB">
<rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<subviews>
<imageView userInteractionEnabled="NO" contentMode="center" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="Icon" translatesAutoresizingMaskIntoConstraints="NO" id="qT0-hI-WW6">
<rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
</imageView>
</subviews>
<color key="backgroundColor" red="0.89411764705882346" green="0.44313725490196076" blue="0.36470588235294116" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<constraints>
<constraint firstAttribute="trailing" secondItem="qT0-hI-WW6" secondAttribute="trailing" id="8eE-l4-Nl8"/>
<constraint firstItem="qT0-hI-WW6" firstAttribute="top" secondItem="iN0-l3-epB" secondAttribute="top" id="RPR-Lb-YTg"/>
<constraint firstItem="qT0-hI-WW6" firstAttribute="leading" secondItem="iN0-l3-epB" secondAttribute="leading" id="Xh6-yC-K4f"/>
<constraint firstAttribute="bottom" secondItem="qT0-hI-WW6" secondAttribute="bottom" id="ZKg-1P-IMr"/>
</constraints>
</view>
</objects>
<resources>
<image name="Icon" width="90" height="90"/>
</resources>
</document>
30 changes: 16 additions & 14 deletions Example/ViewController.xib
Original file line number Diff line number Diff line change
@@ -1,11 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="13189.4" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" colorMatched="YES">
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="13529" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
<device id="retina4_0" orientation="portrait">
<adaptation id="fullscreen"/>
</device>
<dependencies>
<deployment identifier="iOS"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="13165.3"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="13527"/>
<capability name="Safe area layout guides" minToolsVersion="9.0"/>
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
</dependencies>
<customFonts key="customFonts">
@@ -31,10 +32,10 @@
<rect key="frame" x="0.0" y="0.0" width="320" height="568"/>
</imageView>
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="QHP-Db-zQM">
<rect key="frame" x="0.0" y="0.0" width="320" height="100"/>
<rect key="frame" x="0.0" y="0.0" width="320" height="118"/>
<subviews>
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="cgD-PF-WNE">
<rect key="frame" x="70" y="28" width="41" height="29"/>
<rect key="frame" x="70" y="48" width="41" height="29"/>
<fontDescription key="fontDescription" name="AppleSDGothicNeo-Regular" family="Apple SD Gothic Neo" pointSize="14"/>
<state key="normal" title="Library">
<color key="titleShadowColor" red="0.5" green="0.5" blue="0.5" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
@@ -44,13 +45,13 @@
</connections>
</button>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Cropping" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="3e8-yb-h3L">
<rect key="frame" x="258" y="65" width="53.5" height="17"/>
<rect key="frame" x="258" y="85" width="53.5" height="17"/>
<fontDescription key="fontDescription" name="AppleSDGothicNeo-Regular" family="Apple SD Gothic Neo" pointSize="14"/>
<color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<nil key="highlightedColor"/>
</label>
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="YHP-W6-S2W">
<rect key="frame" x="15" y="28" width="45" height="29"/>
<rect key="frame" x="15" y="48" width="45" height="29"/>
<fontDescription key="fontDescription" name="AppleSDGothicNeo-Regular" family="Apple SD Gothic Neo" pointSize="14"/>
<state key="normal" title="Camera">
<color key="titleShadowColor" red="0.5" green="0.5" blue="0.5" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
@@ -60,19 +61,19 @@
</connections>
</button>
<switch opaque="NO" contentMode="scaleToFill" horizontalHuggingPriority="750" verticalHuggingPriority="750" contentHorizontalAlignment="center" contentVerticalAlignment="center" translatesAutoresizingMaskIntoConstraints="NO" id="kvv-7d-Re7">
<rect key="frame" x="260.5" y="28" width="51" height="31"/>
<rect key="frame" x="260.5" y="48" width="51" height="31"/>
<connections>
<action selector="croppingChanged:" destination="-1" eventType="valueChanged" id="fjU-Hs-bwf"/>
</connections>
</switch>
<switch opaque="NO" contentMode="scaleToFill" horizontalHuggingPriority="750" verticalHuggingPriority="750" contentHorizontalAlignment="center" contentVerticalAlignment="center" on="YES" translatesAutoresizingMaskIntoConstraints="NO" id="JPj-mG-Hu1">
<rect key="frame" x="176" y="28" width="51" height="31"/>
<rect key="frame" x="176" y="48" width="51" height="31"/>
<connections>
<action selector="libraryChanged:" destination="-1" eventType="valueChanged" id="Bt6-HK-b05"/>
</connections>
</switch>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Library Access" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="VFc-CF-Vtc">
<rect key="frame" x="158" y="65" width="84.5" height="17"/>
<rect key="frame" x="158" y="85" width="84.5" height="17"/>
<fontDescription key="fontDescription" name="AppleSDGothicNeo-Regular" family="Apple SD Gothic Neo" pointSize="14"/>
<color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<nil key="highlightedColor"/>
@@ -82,21 +83,20 @@
<constraints>
<constraint firstItem="kvv-7d-Re7" firstAttribute="centerX" secondItem="3e8-yb-h3L" secondAttribute="centerX" id="03O-8V-75Q"/>
<constraint firstItem="3e8-yb-h3L" firstAttribute="leading" secondItem="VFc-CF-Vtc" secondAttribute="trailing" constant="15.5" id="4Jt-tB-SUL"/>
<constraint firstAttribute="bottom" secondItem="3e8-yb-h3L" secondAttribute="bottom" constant="16" id="5p4-dS-pea"/>
<constraint firstItem="VFc-CF-Vtc" firstAttribute="top" secondItem="JPj-mG-Hu1" secondAttribute="bottom" constant="6" id="6Pj-pH-zeh"/>
<constraint firstItem="JPj-mG-Hu1" firstAttribute="top" secondItem="kvv-7d-Re7" secondAttribute="top" id="7aB-or-fz9"/>
<constraint firstItem="JPj-mG-Hu1" firstAttribute="centerX" secondItem="VFc-CF-Vtc" secondAttribute="centerX" id="9gI-Mi-9w4"/>
<constraint firstItem="3e8-yb-h3L" firstAttribute="top" secondItem="kvv-7d-Re7" secondAttribute="bottom" constant="6" id="SdV-Ft-rmy"/>
<constraint firstItem="kvv-7d-Re7" firstAttribute="top" secondItem="QHP-Db-zQM" secondAttribute="top" constant="28" id="W5O-yZ-i38"/>
<constraint firstAttribute="trailing" secondItem="3e8-yb-h3L" secondAttribute="trailing" constant="8.5" id="ZKC-Ah-kcn"/>
<constraint firstItem="kvv-7d-Re7" firstAttribute="top" secondItem="YHP-W6-S2W" secondAttribute="top" id="bj8-Oa-dOs"/>
<constraint firstItem="cgD-PF-WNE" firstAttribute="centerY" secondItem="YHP-W6-S2W" secondAttribute="centerY" id="cYp-Ej-9Ae"/>
<constraint firstItem="YHP-W6-S2W" firstAttribute="leading" secondItem="QHP-Db-zQM" secondAttribute="leading" constant="15" id="lWS-ni-lO4"/>
<constraint firstItem="cgD-PF-WNE" firstAttribute="leading" secondItem="YHP-W6-S2W" secondAttribute="trailing" constant="10" id="qr4-NW-qgn"/>
<constraint firstAttribute="height" constant="100" id="s71-ge-v5z"/>
<constraint firstItem="YHP-W6-S2W" firstAttribute="top" secondItem="QHP-Db-zQM" secondAttribute="top" constant="28" id="xrT-P5-K1h"/>
</constraints>
</view>
<view hidden="YES" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="aZk-39-lei">
<rect key="frame" x="0.0" y="463" width="320" height="105"/>
<rect key="frame" x="0.0" y="470" width="320" height="98"/>
<subviews>
<switch opaque="NO" contentMode="scaleToFill" horizontalHuggingPriority="750" verticalHuggingPriority="750" contentHorizontalAlignment="center" contentVerticalAlignment="center" on="YES" translatesAutoresizingMaskIntoConstraints="NO" id="k5h-ry-m8S">
<rect key="frame" x="15" y="28" width="51" height="31"/>
@@ -153,7 +153,6 @@
<constraint firstItem="k5h-ry-m8S" firstAttribute="top" secondItem="cSR-t6-yJv" secondAttribute="bottom" constant="8" id="Fb1-4H-MtS"/>
<constraint firstItem="DSI-Wk-w93" firstAttribute="centerY" secondItem="k5h-ry-m8S" secondAttribute="centerY" id="GXP-Jm-a8F"/>
<constraint firstItem="DXi-q2-e5s" firstAttribute="top" secondItem="wMe-QX-l9A" secondAttribute="bottom" constant="6" id="JKt-OZ-OfS"/>
<constraint firstAttribute="height" constant="105" id="MTP-Zi-Sp6"/>
<constraint firstItem="wMe-QX-l9A" firstAttribute="top" secondItem="k5h-ry-m8S" secondAttribute="top" id="Oi9-A3-OeO"/>
<constraint firstItem="k5h-ry-m8S" firstAttribute="top" secondItem="aZk-39-lei" secondAttribute="top" constant="28" id="YVP-87-gmz"/>
<constraint firstItem="cSR-t6-yJv" firstAttribute="leading" secondItem="aZk-39-lei" secondAttribute="leading" constant="8" id="bIT-h5-U4i"/>
@@ -175,12 +174,15 @@
<constraint firstAttribute="trailing" secondItem="aZk-39-lei" secondAttribute="trailing" id="4zq-u4-Caf"/>
<constraint firstItem="QHP-Db-zQM" firstAttribute="top" secondItem="iN0-l3-epB" secondAttribute="top" id="6X2-HK-7yY"/>
<constraint firstItem="aZk-39-lei" firstAttribute="leading" secondItem="iN0-l3-epB" secondAttribute="leading" id="Mbt-ze-5GF"/>
<constraint firstItem="YHP-W6-S2W" firstAttribute="top" secondItem="jeK-tH-kgg" secondAttribute="top" constant="28" id="TMC-0K-IHv"/>
<constraint firstAttribute="trailing" secondItem="QHP-Db-zQM" secondAttribute="trailing" id="UKI-40-dOB"/>
<constraint firstAttribute="trailing" secondItem="I4G-in-XtY" secondAttribute="trailing" id="YSb-RL-EaX"/>
<constraint firstItem="I4G-in-XtY" firstAttribute="leading" secondItem="iN0-l3-epB" secondAttribute="leading" id="hv9-n7-2WA"/>
<constraint firstAttribute="bottom" secondItem="aZk-39-lei" secondAttribute="bottom" id="sdt-XQ-KKp"/>
<constraint firstItem="jeK-tH-kgg" firstAttribute="bottom" secondItem="In7-Or-H5s" secondAttribute="bottom" constant="16" id="wr8-YB-gpQ"/>
<constraint firstItem="QHP-Db-zQM" firstAttribute="leading" secondItem="iN0-l3-epB" secondAttribute="leading" id="x5W-Fe-hte"/>
</constraints>
<viewLayoutGuide key="safeArea" id="jeK-tH-kgg"/>
<point key="canvasLocation" x="366" y="492"/>
</view>
</objects>
4 changes: 3 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -25,8 +25,10 @@ Add the following to your Podfile:

```ruby
pod 'ALCameraViewController'
```
> For swift 3.2 support
// For swift 3.2 support
```ruby
pod 'ALCameraViewController', '~> 2.0.3'
```

0 comments on commit 3d556d8

Please sign in to comment.