This commit is contained in:
Max Hunt 2019-05-28 16:01:30 +01:00
parent bd45f9f215
commit d357588a6c
56 changed files with 816 additions and 15 deletions

View File

@ -10,8 +10,16 @@
50A7ADD5229D6A4200D58743 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 50A7ADD4229D6A4200D58743 /* AppDelegate.swift */; };
50A7ADD7229D6A4200D58743 /* ViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 50A7ADD6229D6A4200D58743 /* ViewController.swift */; };
50A7ADDA229D6A4200D58743 /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 50A7ADD8229D6A4200D58743 /* Main.storyboard */; };
50A7ADDC229D6A4200D58743 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 50A7ADDB229D6A4200D58743 /* Assets.xcassets */; };
50A7ADDF229D6A4200D58743 /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 50A7ADDD229D6A4200D58743 /* LaunchScreen.storyboard */; };
50A7ADE7229D6C7100D58743 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 50A7ADE6229D6C7100D58743 /* Assets.xcassets */; };
50A7ADF3229D759F00D58743 /* 2_WelcomeViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 50A7ADF2229D759F00D58743 /* 2_WelcomeViewController.swift */; };
50A7ADF5229D75A900D58743 /* 3_StartViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 50A7ADF4229D75A900D58743 /* 3_StartViewController.swift */; };
50A7ADF7229D75B600D58743 /* 4_VideoViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 50A7ADF6229D75B600D58743 /* 4_VideoViewController.swift */; };
50A7ADF9229D75C100D58743 /* 5_HandChoiceViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 50A7ADF8229D75C100D58743 /* 5_HandChoiceViewController.swift */; };
50A7ADFB229D75E900D58743 /* 6_SideChoiceViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 50A7ADFA229D75E900D58743 /* 6_SideChoiceViewController.swift */; };
50A7ADFD229D766800D58743 /* 7_ReadyViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 50A7ADFC229D766800D58743 /* 7_ReadyViewController.swift */; };
50A7ADFF229D768900D58743 /* MainViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 50A7ADFE229D768900D58743 /* MainViewController.swift */; };
50A7AE02229D7B1100D58743 /* MapKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 50A7AE01229D7B1100D58743 /* MapKit.framework */; };
/* End PBXBuildFile section */
/* Begin PBXFileReference section */
@ -19,9 +27,18 @@
50A7ADD4229D6A4200D58743 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; };
50A7ADD6229D6A4200D58743 /* ViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ViewController.swift; sourceTree = "<group>"; };
50A7ADD9229D6A4200D58743 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = "<group>"; };
50A7ADDB229D6A4200D58743 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
50A7ADDE229D6A4200D58743 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = "<group>"; };
50A7ADE0229D6A4200D58743 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
50A7ADE6229D6C7100D58743 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
50A7ADF2229D759F00D58743 /* 2_WelcomeViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = 2_WelcomeViewController.swift; sourceTree = "<group>"; };
50A7ADF4229D75A900D58743 /* 3_StartViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = 3_StartViewController.swift; sourceTree = "<group>"; };
50A7ADF6229D75B600D58743 /* 4_VideoViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = 4_VideoViewController.swift; sourceTree = "<group>"; };
50A7ADF8229D75C100D58743 /* 5_HandChoiceViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = 5_HandChoiceViewController.swift; sourceTree = "<group>"; };
50A7ADFA229D75E900D58743 /* 6_SideChoiceViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = 6_SideChoiceViewController.swift; sourceTree = "<group>"; };
50A7ADFC229D766800D58743 /* 7_ReadyViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = 7_ReadyViewController.swift; sourceTree = "<group>"; };
50A7ADFE229D768900D58743 /* MainViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MainViewController.swift; sourceTree = "<group>"; };
50A7AE01229D7B1100D58743 /* MapKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MapKit.framework; path = System/Library/Frameworks/MapKit.framework; sourceTree = SDKROOT; };
50A7AE05229D7B1E00D58743 /* Guibe.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = Guibe.entitlements; sourceTree = "<group>"; };
/* End PBXFileReference section */
/* Begin PBXFrameworksBuildPhase section */
@ -29,6 +46,7 @@
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
50A7AE02229D7B1100D58743 /* MapKit.framework in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@ -40,6 +58,7 @@
children = (
50A7ADD3229D6A4200D58743 /* Guibe */,
50A7ADD2229D6A4200D58743 /* Products */,
50A7AE00229D7B1100D58743 /* Frameworks */,
);
sourceTree = "<group>";
};
@ -54,16 +73,32 @@
50A7ADD3229D6A4200D58743 /* Guibe */ = {
isa = PBXGroup;
children = (
50A7AE05229D7B1E00D58743 /* Guibe.entitlements */,
50A7ADD4229D6A4200D58743 /* AppDelegate.swift */,
50A7ADD6229D6A4200D58743 /* ViewController.swift */,
50A7ADE6229D6C7100D58743 /* Assets.xcassets */,
50A7ADD8229D6A4200D58743 /* Main.storyboard */,
50A7ADDB229D6A4200D58743 /* Assets.xcassets */,
50A7ADFE229D768900D58743 /* MainViewController.swift */,
50A7ADFC229D766800D58743 /* 7_ReadyViewController.swift */,
50A7ADF2229D759F00D58743 /* 2_WelcomeViewController.swift */,
50A7ADF4229D75A900D58743 /* 3_StartViewController.swift */,
50A7ADF6229D75B600D58743 /* 4_VideoViewController.swift */,
50A7ADF8229D75C100D58743 /* 5_HandChoiceViewController.swift */,
50A7ADFA229D75E900D58743 /* 6_SideChoiceViewController.swift */,
50A7ADDD229D6A4200D58743 /* LaunchScreen.storyboard */,
50A7ADE0229D6A4200D58743 /* Info.plist */,
);
path = Guibe;
sourceTree = "<group>";
};
50A7AE00229D7B1100D58743 /* Frameworks */ = {
isa = PBXGroup;
children = (
50A7AE01229D7B1100D58743 /* MapKit.framework */,
);
name = Frameworks;
sourceTree = "<group>";
};
/* End PBXGroup section */
/* Begin PBXNativeTarget section */
@ -96,6 +131,20 @@
TargetAttributes = {
50A7ADD0229D6A4200D58743 = {
CreatedOnToolsVersion = 10.2.1;
SystemCapabilities = {
com.apple.BackgroundModes = {
enabled = 1;
};
com.apple.DataProtection = {
enabled = 0;
};
com.apple.Maps.iOS = {
enabled = 1;
};
com.apple.WAC = {
enabled = 0;
};
};
};
};
};
@ -123,7 +172,7 @@
buildActionMask = 2147483647;
files = (
50A7ADDF229D6A4200D58743 /* LaunchScreen.storyboard in Resources */,
50A7ADDC229D6A4200D58743 /* Assets.xcassets in Resources */,
50A7ADE7229D6C7100D58743 /* Assets.xcassets in Resources */,
50A7ADDA229D6A4200D58743 /* Main.storyboard in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
@ -135,8 +184,15 @@
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
50A7ADFD229D766800D58743 /* 7_ReadyViewController.swift in Sources */,
50A7ADF9229D75C100D58743 /* 5_HandChoiceViewController.swift in Sources */,
50A7ADD7229D6A4200D58743 /* ViewController.swift in Sources */,
50A7ADF5229D75A900D58743 /* 3_StartViewController.swift in Sources */,
50A7ADF3229D759F00D58743 /* 2_WelcomeViewController.swift in Sources */,
50A7ADD5229D6A4200D58743 /* AppDelegate.swift in Sources */,
50A7ADFF229D768900D58743 /* MainViewController.swift in Sources */,
50A7ADF7229D75B600D58743 /* 4_VideoViewController.swift in Sources */,
50A7ADFB229D75E900D58743 /* 6_SideChoiceViewController.swift in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@ -283,13 +339,13 @@
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CODE_SIGN_STYLE = Automatic;
DEVELOPMENT_TEAM = 36JR976L6Y;
DEVELOPMENT_TEAM = T87U8Q4BB3;
INFOPLIST_FILE = Guibe/Info.plist;
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/Frameworks",
);
PRODUCT_BUNDLE_IDENTIFIER = icl.8.Guibe;
PRODUCT_BUNDLE_IDENTIFIER = icl.8.Guibes;
PRODUCT_NAME = "$(TARGET_NAME)";
SWIFT_VERSION = 5.0;
TARGETED_DEVICE_FAMILY = "1,2";
@ -301,13 +357,13 @@
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CODE_SIGN_STYLE = Automatic;
DEVELOPMENT_TEAM = 36JR976L6Y;
DEVELOPMENT_TEAM = T87U8Q4BB3;
INFOPLIST_FILE = Guibe/Info.plist;
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/Frameworks",
);
PRODUCT_BUNDLE_IDENTIFIER = icl.8.Guibe;
PRODUCT_BUNDLE_IDENTIFIER = icl.8.Guibes;
PRODUCT_NAME = "$(TARGET_NAME)";
SWIFT_VERSION = 5.0;
TARGETED_DEVICE_FAMILY = "1,2";

View File

@ -0,0 +1,60 @@
//
// 2_WelcomeViewController.swift
// Guibe
//
// Created by Max Hunt on 28/05/2019.
// Copyright © 2019 8. All rights reserved.
//
import UIKit
import CoreLocation
class W2lcomeViewController: UIViewController, CLLocationManagerDelegate {
let locationManager = CLLocationManager()
override func viewDidLoad() {
super.viewDidLoad()
sleep(1)
self.locationManager.requestAlwaysAuthorization()
let xstatus = CLLocationManager.authorizationStatus()
if xstatus == CLAuthorizationStatus.authorizedAlways || xstatus == CLAuthorizationStatus.authorizedWhenInUse{
DispatchQueue.main.asyncAfter(deadline: .now() + 1) {
let nextViewController = self.storyboard?.instantiateViewController(withIdentifier: "screen3") as! S3artViewController
nextViewController.modalTransitionStyle = .crossDissolve
self.present(nextViewController, animated: true, completion: nil)
}
}
// Do any additional setup after loading the view.
}
func locationManager(_ manager: CLLocationManager, didChangeAuthorization status: CLAuthorizationStatus) {
if status == CLAuthorizationStatus.authorizedAlways || status == CLAuthorizationStatus.authorizedWhenInUse{
DispatchQueue.main.asyncAfter(deadline: .now() + 1) {
let nextViewController = self.storyboard?.instantiateViewController(withIdentifier: "screen3") as! S3artViewController
nextViewController.modalTransitionStyle = .crossDissolve
self.present(nextViewController, animated: true, completion: nil)
}
}
if status == CLAuthorizationStatus.denied{
//bad
}
}
/*
// MARK: - Navigation
// In a storyboard-based application, you will often want to do a little preparation before navigation
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
// Get the new view controller using segue.destination.
// Pass the selected object to the new view controller.
}
*/
}

View File

@ -0,0 +1,30 @@
//
// 3_StartViewController.swift
// Guibe
//
// Created by Max Hunt on 28/05/2019.
// Copyright © 2019 8. All rights reserved.
//
import UIKit
class S3artViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
}
/*
// MARK: - Navigation
// In a storyboard-based application, you will often want to do a little preparation before navigation
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
// Get the new view controller using segue.destination.
// Pass the selected object to the new view controller.
}
*/
}

View File

@ -0,0 +1,30 @@
//
// 4_VideoViewController.swift
// Guibe
//
// Created by Max Hunt on 28/05/2019.
// Copyright © 2019 8. All rights reserved.
//
import UIKit
class V4deoViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
}
/*
// MARK: - Navigation
// In a storyboard-based application, you will often want to do a little preparation before navigation
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
// Get the new view controller using segue.destination.
// Pass the selected object to the new view controller.
}
*/
}

View File

@ -0,0 +1,30 @@
//
// 5_HandChoiceViewController.swift
// Guibe
//
// Created by Max Hunt on 28/05/2019.
// Copyright © 2019 8. All rights reserved.
//
import UIKit
class H5ndChoiceViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
}
/*
// MARK: - Navigation
// In a storyboard-based application, you will often want to do a little preparation before navigation
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
// Get the new view controller using segue.destination.
// Pass the selected object to the new view controller.
}
*/
}

View File

@ -0,0 +1,30 @@
//
// 6_SideChoiceViewController.swift
// Guibe
//
// Created by Max Hunt on 28/05/2019.
// Copyright © 2019 8. All rights reserved.
//
import UIKit
class S6deChoiceViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
}
/*
// MARK: - Navigation
// In a storyboard-based application, you will often want to do a little preparation before navigation
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
// Get the new view controller using segue.destination.
// Pass the selected object to the new view controller.
}
*/
}

View File

@ -0,0 +1,30 @@
//
// 7_ReadyViewController.swift
// Guibe
//
// Created by Max Hunt on 28/05/2019.
// Copyright © 2019 8. All rights reserved.
//
import UIKit
class R7adyViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
}
/*
// MARK: - Navigation
// In a storyboard-based application, you will often want to do a little preparation before navigation
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
// Get the new view controller using segue.destination.
// Pass the selected object to the new view controller.
}
*/
}

View File

@ -0,0 +1,23 @@
{
"images" : [
{
"idiom" : "universal",
"filename" : "Screenshot 2019-05-28 at 14.09.29.png",
"scale" : "1x"
},
{
"idiom" : "universal",
"filename" : "Screenshot 2019-05-28 at 14.09.29-1.png",
"scale" : "2x"
},
{
"idiom" : "universal",
"filename" : "Screenshot 2019-05-28 at 14.09.29-2.png",
"scale" : "3x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 108 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 108 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 108 KiB

View File

@ -0,0 +1,23 @@
{
"images" : [
{
"idiom" : "universal",
"filename" : "s1l.png",
"scale" : "1x"
},
{
"idiom" : "universal",
"filename" : "s1l-1.png",
"scale" : "2x"
},
{
"idiom" : "universal",
"filename" : "s1l-2.png",
"scale" : "3x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 137 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 137 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 137 KiB

View File

@ -0,0 +1,23 @@
{
"images" : [
{
"idiom" : "universal",
"filename" : "s1r.png",
"scale" : "1x"
},
{
"idiom" : "universal",
"filename" : "s1r-1.png",
"scale" : "2x"
},
{
"idiom" : "universal",
"filename" : "s1r-2.png",
"scale" : "3x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 MiB

View File

@ -0,0 +1,23 @@
{
"images" : [
{
"idiom" : "universal",
"filename" : "s2b.png",
"scale" : "1x"
},
{
"idiom" : "universal",
"filename" : "s2b-1.png",
"scale" : "2x"
},
{
"idiom" : "universal",
"filename" : "s2b-2.png",
"scale" : "3x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 MiB

View File

@ -0,0 +1,23 @@
{
"images" : [
{
"idiom" : "universal",
"filename" : "s2t.png",
"scale" : "1x"
},
{
"idiom" : "universal",
"filename" : "s2t-1.png",
"scale" : "2x"
},
{
"idiom" : "universal",
"filename" : "s2t-2.png",
"scale" : "3x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 MiB

View File

@ -0,0 +1,23 @@
{
"images" : [
{
"idiom" : "universal",
"filename" : "select1Screen.png",
"scale" : "1x"
},
{
"idiom" : "universal",
"filename" : "select1Screen-1.png",
"scale" : "2x"
},
{
"idiom" : "universal",
"filename" : "select1Screen-2.png",
"scale" : "3x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 37 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 37 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 37 KiB

View File

@ -0,0 +1,23 @@
{
"images" : [
{
"idiom" : "universal",
"filename" : "select2Screen.png",
"scale" : "1x"
},
{
"idiom" : "universal",
"filename" : "select2Screen-1.png",
"scale" : "2x"
},
{
"idiom" : "universal",
"filename" : "select2Screen-2.png",
"scale" : "3x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

View File

@ -0,0 +1,23 @@
{
"images" : [
{
"idiom" : "universal",
"filename" : "startBtn.png",
"scale" : "1x"
},
{
"idiom" : "universal",
"filename" : "startBtn-1.png",
"scale" : "2x"
},
{
"idiom" : "universal",
"filename" : "startBtn-2.png",
"scale" : "3x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

View File

@ -0,0 +1,23 @@
{
"images" : [
{
"idiom" : "universal",
"filename" : "startScreen.png",
"scale" : "1x"
},
{
"idiom" : "universal",
"filename" : "startScreen-1.png",
"scale" : "2x"
},
{
"idiom" : "universal",
"filename" : "startScreen-2.png",
"scale" : "3x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

View File

@ -0,0 +1,23 @@
{
"images" : [
{
"idiom" : "universal",
"filename" : "welcome2Screen.png",
"scale" : "1x"
},
{
"idiom" : "universal",
"filename" : "welcome2Screen-1.png",
"scale" : "2x"
},
{
"idiom" : "universal",
"filename" : "welcome2Screen-2.png",
"scale" : "3x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 61 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 61 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 61 KiB

View File

@ -0,0 +1,23 @@
{
"images" : [
{
"idiom" : "universal",
"filename" : "Screenshot 2019-05-28 at 14.12.36.png",
"scale" : "1x"
},
{
"idiom" : "universal",
"filename" : "Screenshot 2019-05-28 at 14.12.36-1.png",
"scale" : "2x"
},
{
"idiom" : "universal",
"filename" : "Screenshot 2019-05-28 at 14.12.36-2.png",
"scale" : "3x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 56 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 56 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 56 KiB

View File

@ -1,7 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="13122.16" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="BYZ-38-t0r">
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="14490.70" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="BYZ-38-t0r">
<device id="retina6_5" orientation="portrait">
<adaptation id="fullscreen"/>
</device>
<dependencies>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="13104.12"/>
<deployment identifier="iOS"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="14490.49"/>
<capability name="Safe area layout guides" minToolsVersion="9.0"/>
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
</dependencies>
@ -9,16 +13,215 @@
<!--View Controller-->
<scene sceneID="tne-QT-ifu">
<objects>
<viewController id="BYZ-38-t0r" customClass="ViewController" customModuleProvider="target" sceneMemberID="viewController">
<viewController id="BYZ-38-t0r" customClass="ViewController" customModule="Guibe" customModuleProvider="target" sceneMemberID="viewController">
<view key="view" contentMode="scaleToFill" id="8bC-Xf-vdC">
<rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
<rect key="frame" x="0.0" y="0.0" width="414" height="896"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<subviews>
<imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" fixedFrame="YES" image="LoadScreen" translatesAutoresizingMaskIntoConstraints="NO" id="oNd-dx-rFl">
<rect key="frame" x="12" y="0.0" width="402" height="896"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
</imageView>
</subviews>
<color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<viewLayoutGuide key="safeArea" id="6Tk-OE-BBY"/>
</view>
</viewController>
<placeholder placeholderIdentifier="IBFirstResponder" id="dkx-z0-nzr" sceneMemberID="firstResponder"/>
</objects>
<point key="canvasLocation" x="47.826086956521742" y="20.758928571428569"/>
</scene>
<!--2lcome View Controller-->
<scene sceneID="u4u-33-guT">
<objects>
<viewController storyboardIdentifier="screen2" useStoryboardIdentifierAsRestorationIdentifier="YES" id="9pW-8V-82V" customClass="W2lcomeViewController" customModule="Guibe" customModuleProvider="target" sceneMemberID="viewController">
<view key="view" contentMode="scaleToFill" id="5pm-jt-Og3">
<rect key="frame" x="0.0" y="0.0" width="414" height="896"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<subviews>
<imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" fixedFrame="YES" image="welcomeScreen" translatesAutoresizingMaskIntoConstraints="NO" id="J35-r3-k1v">
<rect key="frame" x="0.0" y="0.0" width="414" height="896"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
</imageView>
</subviews>
<color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
<viewLayoutGuide key="safeArea" id="UBI-r1-yTn"/>
</view>
</viewController>
<placeholder placeholderIdentifier="IBFirstResponder" id="tOf-RV-4kP" userLabel="First Responder" sceneMemberID="firstResponder"/>
</objects>
<point key="canvasLocation" x="882.60869565217399" y="20.758928571428569"/>
</scene>
<!--3art View Controller-->
<scene sceneID="xah-oV-ojV">
<objects>
<viewController storyboardIdentifier="screen3" useStoryboardIdentifierAsRestorationIdentifier="YES" id="S0e-nc-j2W" customClass="S3artViewController" customModule="Guibe" customModuleProvider="target" sceneMemberID="viewController">
<view key="view" contentMode="scaleToFill" id="e0K-tK-Xb4">
<rect key="frame" x="0.0" y="0.0" width="414" height="896"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<subviews>
<imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" fixedFrame="YES" image="startScreen" highlightedImage="startScreen" translatesAutoresizingMaskIntoConstraints="NO" id="MAO-Q8-WFo">
<rect key="frame" x="0.0" y="0.0" width="414" height="896"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
</imageView>
<button opaque="NO" contentMode="scaleAspectFit" fixedFrame="YES" contentHorizontalAlignment="center" contentVerticalAlignment="center" adjustsImageWhenDisabled="NO" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="Vc2-EO-nFa">
<rect key="frame" x="91.411398265853677" y="669" width="228.99999999999977" height="59.999999999999915"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
<state key="normal" backgroundImage="startBtn"/>
</button>
</subviews>
<color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
<viewLayoutGuide key="safeArea" id="ERx-Xn-jx1"/>
</view>
</viewController>
<placeholder placeholderIdentifier="IBFirstResponder" id="OjR-hE-Zab" userLabel="First Responder" sceneMemberID="firstResponder"/>
</objects>
<point key="canvasLocation" x="1715.9420289855075" y="20.758928571428569"/>
</scene>
<!--4deo View Controller-->
<scene sceneID="o8F-Mx-xWY">
<objects>
<viewController storyboardIdentifier="screen4" useStoryboardIdentifierAsRestorationIdentifier="YES" id="8xf-T6-H67" customClass="V4deoViewController" customModule="Guibe" customModuleProvider="target" sceneMemberID="viewController">
<view key="view" contentMode="scaleToFill" id="iTM-B5-mLe">
<rect key="frame" x="0.0" y="0.0" width="414" height="896"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<subviews>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" fixedFrame="YES" text="VIDEO" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Mfc-D8-3eu">
<rect key="frame" x="65.473151620259159" y="388.69202298550181" width="282" height="119.9999999999999"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
<fontDescription key="fontDescription" type="system" pointSize="100"/>
<nil key="textColor"/>
<nil key="highlightedColor"/>
</label>
</subviews>
<color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
<viewLayoutGuide key="safeArea" id="MT9-Vx-1hz"/>
</view>
</viewController>
<placeholder placeholderIdentifier="IBFirstResponder" id="Dhl-P2-3k6" userLabel="First Responder" sceneMemberID="firstResponder"/>
</objects>
<point key="canvasLocation" x="2590" y="21"/>
</scene>
<!--5nd Choice View Controller-->
<scene sceneID="8Ym-Ub-aPL">
<objects>
<viewController storyboardIdentifier="screen5" useStoryboardIdentifierAsRestorationIdentifier="YES" id="1fA-dZ-9ei" customClass="H5ndChoiceViewController" customModule="Guibe" customModuleProvider="target" sceneMemberID="viewController">
<view key="view" contentMode="scaleToFill" id="yFE-3g-5Bb">
<rect key="frame" x="0.0" y="0.0" width="414" height="896"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<subviews>
<imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" fixedFrame="YES" image="select1Screen" highlightedImage="startScreen" translatesAutoresizingMaskIntoConstraints="NO" id="I7R-za-6TE">
<rect key="frame" x="0.0" y="10" width="414" height="896"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
</imageView>
<button opaque="NO" contentMode="scaleAspectFill" fixedFrame="YES" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="WEN-tY-jI4">
<rect key="frame" x="96" y="279" width="223" height="245"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
<color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
<state key="normal" backgroundImage="s1l"/>
</button>
<button opaque="NO" contentMode="scaleAspectFill" fixedFrame="YES" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="gt2-6x-6Ha">
<rect key="frame" x="96" y="607" width="223" height="227"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
<color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
<state key="normal" backgroundImage="s1r"/>
</button>
</subviews>
<color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
<viewLayoutGuide key="safeArea" id="DBZ-Gw-djK"/>
</view>
</viewController>
<placeholder placeholderIdentifier="IBFirstResponder" id="F9v-Vk-vwE" userLabel="First Responder" sceneMemberID="firstResponder"/>
</objects>
<point key="canvasLocation" x="3505.7971014492755" y="20.758928571428569"/>
</scene>
<!--6de Choice View Controller-->
<scene sceneID="QLR-Oe-vCm">
<objects>
<viewController storyboardIdentifier="screen6" useStoryboardIdentifierAsRestorationIdentifier="YES" id="Y31-kj-JwL" customClass="S6deChoiceViewController" customModule="Guibe" customModuleProvider="target" sceneMemberID="viewController">
<view key="view" contentMode="scaleToFill" id="mMu-dE-sY9">
<rect key="frame" x="0.0" y="0.0" width="414" height="896"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<subviews>
<imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" fixedFrame="YES" image="select2Screen" highlightedImage="startScreen" translatesAutoresizingMaskIntoConstraints="NO" id="oNq-I3-eNL">
<rect key="frame" x="0.0" y="0.0" width="414" height="896"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
</imageView>
<button opaque="NO" contentMode="scaleAspectFill" fixedFrame="YES" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="knf-O9-7aw">
<rect key="frame" x="88" y="271" width="237" height="229"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
<color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
<state key="normal" backgroundImage="s2t"/>
</button>
<button opaque="NO" contentMode="scaleAspectFill" fixedFrame="YES" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="tvs-dW-FeO">
<rect key="frame" x="88" y="602" width="237" height="235"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
<color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
<state key="normal" backgroundImage="s2b"/>
</button>
</subviews>
<color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
<viewLayoutGuide key="safeArea" id="gsS-aw-PgA"/>
</view>
</viewController>
<placeholder placeholderIdentifier="IBFirstResponder" id="dgq-NS-Hqn" userLabel="First Responder" sceneMemberID="firstResponder"/>
</objects>
<point key="canvasLocation" x="4447.826086956522" y="20.758928571428569"/>
</scene>
<!--7ady View Controller-->
<scene sceneID="alI-ln-agi">
<objects>
<viewController storyboardIdentifier="screen7" useStoryboardIdentifierAsRestorationIdentifier="YES" id="lTn-Ln-RFg" customClass="R7adyViewController" customModule="Guibe" customModuleProvider="target" sceneMemberID="viewController">
<view key="view" contentMode="scaleToFill" id="6A0-Zn-hBC">
<rect key="frame" x="0.0" y="0.0" width="414" height="896"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<subviews>
<imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" fixedFrame="YES" image="welcome2Screen" highlightedImage="startScreen" translatesAutoresizingMaskIntoConstraints="NO" id="ZIq-iO-Wdz">
<rect key="frame" x="0.0" y="0.0" width="414" height="896"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
</imageView>
</subviews>
<color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
<viewLayoutGuide key="safeArea" id="AzM-Y7-if5"/>
</view>
</viewController>
<placeholder placeholderIdentifier="IBFirstResponder" id="sFx-6a-7bc" userLabel="First Responder" sceneMemberID="firstResponder"/>
</objects>
<point key="canvasLocation" x="5362" y="21"/>
</scene>
<!--Main View Controller-->
<scene sceneID="55K-vG-ne9">
<objects>
<viewController storyboardIdentifier="mainView" useStoryboardIdentifierAsRestorationIdentifier="YES" id="Ovf-sw-BKp" customClass="MainViewController" customModule="Guibe" customModuleProvider="target" sceneMemberID="viewController">
<view key="view" contentMode="scaleToFill" id="x4u-9U-kMO">
<rect key="frame" x="0.0" y="0.0" width="414" height="896"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<subviews>
<mapView clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="scaleToFill" fixedFrame="YES" mapType="standard" translatesAutoresizingMaskIntoConstraints="NO" id="Bex-Mk-DDO">
<rect key="frame" x="0.0" y="44" width="414" height="852"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
</mapView>
</subviews>
<color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
<viewLayoutGuide key="safeArea" id="Ut7-03-t0b"/>
</view>
</viewController>
<placeholder placeholderIdentifier="IBFirstResponder" id="a4w-SB-1GS" userLabel="First Responder" sceneMemberID="firstResponder"/>
</objects>
<point key="canvasLocation" x="883" y="759"/>
</scene>
</scenes>
<resources>
<image name="LoadScreen" width="294.66665649414062" height="638"/>
<image name="s1l" width="167.33332824707031" height="199.33332824707031"/>
<image name="s1r" width="435.33334350585938" height="476.66665649414062"/>
<image name="s2b" width="514.33331298828125" height="507"/>
<image name="s2t" width="494.66665649414062" height="490"/>
<image name="select1Screen" width="279.33334350585938" height="606"/>
<image name="select2Screen" width="278.66665649414062" height="605.33331298828125"/>
<image name="startBtn" width="173.33332824707031" height="47.666667938232422"/>
<image name="startScreen" width="306" height="661.33331298828125"/>
<image name="welcome2Screen" width="293.33334350585938" height="636"/>
<image name="welcomeScreen" width="282" height="610"/>
</resources>
</document>

5
Guibe/Guibe.entitlements Normal file
View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict/>
</plist>

View File

@ -4,6 +4,17 @@
<dict>
<key>CFBundleDevelopmentRegion</key>
<string>$(DEVELOPMENT_LANGUAGE)</string>
<key>CFBundleDocumentTypes</key>
<array>
<dict>
<key>CFBundleTypeName</key>
<string>MKDirectionsRequest</string>
<key>LSItemContentTypes</key>
<array>
<string>com.apple.maps.directionsrequest</string>
</array>
</dict>
</array>
<key>CFBundleExecutable</key>
<string>$(EXECUTABLE_NAME)</string>
<key>CFBundleIdentifier</key>
@ -20,6 +31,19 @@
<string>1</string>
<key>LSRequiresIPhoneOS</key>
<true/>
<key>MKDirectionsApplicationSupportedModes</key>
<array>
<string>MKDirectionsModePedestrian</string>
</array>
<key>NSLocationAlwaysAndWhenInUseUsageDescription</key>
<string>The app needs your location to allow step by step navigation</string>
<key>NSLocationWhenInUseUsageDescription</key>
<string>Please allow this feature to navigate</string>
<key>UIBackgroundModes</key>
<array>
<string>location</string>
<string>remote-notification</string>
</array>
<key>UILaunchStoryboardName</key>
<string>LaunchScreen</string>
<key>UIMainStoryboardFile</key>

View File

@ -0,0 +1,30 @@
//
// MainViewController.swift
// Guibe
//
// Created by Max Hunt on 28/05/2019.
// Copyright © 2019 8. All rights reserved.
//
import UIKit
class MainViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
}
/*
// MARK: - Navigation
// In a storyboard-based application, you will often want to do a little preparation before navigation
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
// Get the new view controller using segue.destination.
// Pass the selected object to the new view controller.
}
*/
}

View File

@ -9,12 +9,32 @@
import UIKit
class ViewController: UIViewController {
let defaults = UserDefaults.standard
override func viewDidLoad() {
super.viewDidLoad()
let setupDone = defaults.integer(forKey: "setupDone")
if setupDone != 2 {
DispatchQueue.main.asyncAfter(deadline: .now() + 2) {
let nextViewController = self.storyboard?.instantiateViewController(withIdentifier: "screen2") as! W2lcomeViewController
nextViewController.modalTransitionStyle = .crossDissolve
self.present(nextViewController, animated: true, completion: nil)
}
}
if setupDone == 2 {
DispatchQueue.main.asyncAfter(deadline: .now() + 2) {
let nextViewController = self.storyboard?.instantiateViewController(withIdentifier: "mainView") as! MainViewController
nextViewController.modalTransitionStyle = .crossDissolve
self.present(nextViewController, animated: true, completion: nil)
}
}
// Do any additional setup after loading the view.
}
}