diff --git a/unit-2-assessment/unit-2-assessment.xcodeproj/project.pbxproj b/unit-2-assessment/unit-2-assessment.xcodeproj/project.pbxproj index 838d4b4..c243cce 100644 --- a/unit-2-assessment/unit-2-assessment.xcodeproj/project.pbxproj +++ b/unit-2-assessment/unit-2-assessment.xcodeproj/project.pbxproj @@ -7,6 +7,9 @@ objects = { /* Begin PBXBuildFile section */ + 0BD9099D1BD2940000FA0CC0 /* WeatherTableViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 0BD9099C1BD2940000FA0CC0 /* WeatherTableViewController.m */; settings = {ASSET_TAGS = (); }; }; + 0BD909A01BD2942800FA0CC0 /* DetailViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 0BD9099F1BD2942800FA0CC0 /* DetailViewController.m */; settings = {ASSET_TAGS = (); }; }; + 0BD909A31BD295E200FA0CC0 /* APIManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 0BD909A21BD295E200FA0CC0 /* APIManager.m */; settings = {ASSET_TAGS = (); }; }; 8D6765A61BD289BC00B30411 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 8D6765A51BD289BC00B30411 /* main.m */; }; 8D6765A91BD289BC00B30411 /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 8D6765A81BD289BC00B30411 /* AppDelegate.m */; }; 8D6765AC1BD289BC00B30411 /* ViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 8D6765AB1BD289BC00B30411 /* ViewController.m */; }; @@ -14,9 +17,17 @@ 8D6765B21BD289BC00B30411 /* unit_2_assessment.xcdatamodeld in Sources */ = {isa = PBXBuildFile; fileRef = 8D6765B01BD289BC00B30411 /* unit_2_assessment.xcdatamodeld */; }; 8D6765B41BD289BC00B30411 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 8D6765B31BD289BC00B30411 /* Assets.xcassets */; }; 8D6765B71BD289BC00B30411 /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 8D6765B51BD289BC00B30411 /* LaunchScreen.storyboard */; }; + DA7F65D70D32FA737C623F4E /* libPods.a in Frameworks */ = {isa = PBXBuildFile; fileRef = CEFADAAED7FE2B243F645751 /* libPods.a */; }; /* End PBXBuildFile section */ /* Begin PBXFileReference section */ + 0BD9099B1BD2940000FA0CC0 /* WeatherTableViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WeatherTableViewController.h; sourceTree = ""; }; + 0BD9099C1BD2940000FA0CC0 /* WeatherTableViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WeatherTableViewController.m; sourceTree = ""; }; + 0BD9099E1BD2942800FA0CC0 /* DetailViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DetailViewController.h; sourceTree = ""; }; + 0BD9099F1BD2942800FA0CC0 /* DetailViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DetailViewController.m; sourceTree = ""; }; + 0BD909A11BD295E200FA0CC0 /* APIManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = APIManager.h; sourceTree = ""; }; + 0BD909A21BD295E200FA0CC0 /* APIManager.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = APIManager.m; sourceTree = ""; }; + 54D92796666BA48C00A38C4A /* Pods.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = Pods.release.xcconfig; path = "Pods/Target Support Files/Pods/Pods.release.xcconfig"; sourceTree = ""; }; 8D6765A11BD289BC00B30411 /* unit-2-assessment.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "unit-2-assessment.app"; sourceTree = BUILT_PRODUCTS_DIR; }; 8D6765A51BD289BC00B30411 /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; 8D6765A71BD289BC00B30411 /* AppDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = ""; }; @@ -28,6 +39,8 @@ 8D6765B31BD289BC00B30411 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; 8D6765B61BD289BC00B30411 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; 8D6765B81BD289BC00B30411 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + A942C6C19F0F0128675B2443 /* Pods.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = Pods.debug.xcconfig; path = "Pods/Target Support Files/Pods/Pods.debug.xcconfig"; sourceTree = ""; }; + CEFADAAED7FE2B243F645751 /* libPods.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libPods.a; sourceTree = BUILT_PRODUCTS_DIR; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -35,17 +48,37 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + DA7F65D70D32FA737C623F4E /* libPods.a in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ + 20FBE16171555D969CF01574 /* Pods */ = { + isa = PBXGroup; + children = ( + A942C6C19F0F0128675B2443 /* Pods.debug.xcconfig */, + 54D92796666BA48C00A38C4A /* Pods.release.xcconfig */, + ); + name = Pods; + sourceTree = ""; + }; + 5DC9A3530526F7153BD5BB24 /* Frameworks */ = { + isa = PBXGroup; + children = ( + CEFADAAED7FE2B243F645751 /* libPods.a */, + ); + name = Frameworks; + sourceTree = ""; + }; 8D6765981BD289BC00B30411 = { isa = PBXGroup; children = ( 8D6765A31BD289BC00B30411 /* unit-2-assessment */, 8D6765A21BD289BC00B30411 /* Products */, + 20FBE16171555D969CF01574 /* Pods */, + 5DC9A3530526F7153BD5BB24 /* Frameworks */, ); sourceTree = ""; }; @@ -62,8 +95,14 @@ children = ( 8D6765A71BD289BC00B30411 /* AppDelegate.h */, 8D6765A81BD289BC00B30411 /* AppDelegate.m */, + 0BD909A11BD295E200FA0CC0 /* APIManager.h */, + 0BD909A21BD295E200FA0CC0 /* APIManager.m */, 8D6765AA1BD289BC00B30411 /* ViewController.h */, 8D6765AB1BD289BC00B30411 /* ViewController.m */, + 0BD9099B1BD2940000FA0CC0 /* WeatherTableViewController.h */, + 0BD9099C1BD2940000FA0CC0 /* WeatherTableViewController.m */, + 0BD9099E1BD2942800FA0CC0 /* DetailViewController.h */, + 0BD9099F1BD2942800FA0CC0 /* DetailViewController.m */, 8D6765AD1BD289BC00B30411 /* Main.storyboard */, 8D6765B31BD289BC00B30411 /* Assets.xcassets */, 8D6765B51BD289BC00B30411 /* LaunchScreen.storyboard */, @@ -89,9 +128,11 @@ isa = PBXNativeTarget; buildConfigurationList = 8D6765BB1BD289BC00B30411 /* Build configuration list for PBXNativeTarget "unit-2-assessment" */; buildPhases = ( + 86FBACC5EE95508E54F4C6C8 /* Check Pods Manifest.lock */, 8D67659D1BD289BC00B30411 /* Sources */, 8D67659E1BD289BC00B30411 /* Frameworks */, 8D67659F1BD289BC00B30411 /* Resources */, + 2C992A41BF5349767D9FA96D /* Copy Pods Resources */, ); buildRules = ( ); @@ -147,6 +188,39 @@ }; /* End PBXResourcesBuildPhase section */ +/* Begin PBXShellScriptBuildPhase section */ + 2C992A41BF5349767D9FA96D /* Copy Pods Resources */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + name = "Copy Pods Resources"; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods/Pods-resources.sh\"\n"; + showEnvVarsInLog = 0; + }; + 86FBACC5EE95508E54F4C6C8 /* Check Pods Manifest.lock */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + name = "Check Pods Manifest.lock"; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "diff \"${PODS_ROOT}/../Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [[ $? != 0 ]] ; then\n cat << EOM\nerror: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\nEOM\n exit 1\nfi\n"; + showEnvVarsInLog = 0; + }; +/* End PBXShellScriptBuildPhase section */ + /* Begin PBXSourcesBuildPhase section */ 8D67659D1BD289BC00B30411 /* Sources */ = { isa = PBXSourcesBuildPhase; @@ -155,7 +229,10 @@ 8D6765B21BD289BC00B30411 /* unit_2_assessment.xcdatamodeld in Sources */, 8D6765AC1BD289BC00B30411 /* ViewController.m in Sources */, 8D6765A91BD289BC00B30411 /* AppDelegate.m in Sources */, + 0BD9099D1BD2940000FA0CC0 /* WeatherTableViewController.m in Sources */, + 0BD909A31BD295E200FA0CC0 /* APIManager.m in Sources */, 8D6765A61BD289BC00B30411 /* main.m in Sources */, + 0BD909A01BD2942800FA0CC0 /* DetailViewController.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -263,6 +340,7 @@ }; 8D6765BC1BD289BC00B30411 /* Debug */ = { isa = XCBuildConfiguration; + baseConfigurationReference = A942C6C19F0F0128675B2443 /* Pods.debug.xcconfig */; buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; INFOPLIST_FILE = "unit-2-assessment/Info.plist"; @@ -274,6 +352,7 @@ }; 8D6765BD1BD289BC00B30411 /* Release */ = { isa = XCBuildConfiguration; + baseConfigurationReference = 54D92796666BA48C00A38C4A /* Pods.release.xcconfig */; buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; INFOPLIST_FILE = "unit-2-assessment/Info.plist"; @@ -302,6 +381,7 @@ 8D6765BD1BD289BC00B30411 /* Release */, ); defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; }; /* End XCConfigurationList section */ diff --git a/unit-2-assessment/unit-2-assessment/Base.lproj/Main.storyboard b/unit-2-assessment/unit-2-assessment/Base.lproj/Main.storyboard index e627b3b..ae01c51 100644 --- a/unit-2-assessment/unit-2-assessment/Base.lproj/Main.storyboard +++ b/unit-2-assessment/unit-2-assessment/Base.lproj/Main.storyboard @@ -1,26 +1,302 @@ - + + - + - + - - + + - + + + + + + + + + + + + + + + + + + + + + + + + + + - + + + + + + + + + + + + + + + + + + + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/unit-2-assessment/unit-2-assessment/ViewController.h b/unit-2-assessment/unit-2-assessment/ViewController.h index e41044a..4a55c4a 100644 --- a/unit-2-assessment/unit-2-assessment/ViewController.h +++ b/unit-2-assessment/unit-2-assessment/ViewController.h @@ -8,7 +8,11 @@ #import -@interface ViewController : UIViewController +@interface ViewController : UIViewController + +@property (weak, nonatomic) IBOutlet UITextField *lat; +@property (weak, nonatomic) IBOutlet UITextField *lng; + @end diff --git a/unit-2-assessment/unit-2-assessment/ViewController.m b/unit-2-assessment/unit-2-assessment/ViewController.m index c1f22e5..f74ae54 100644 --- a/unit-2-assessment/unit-2-assessment/ViewController.m +++ b/unit-2-assessment/unit-2-assessment/ViewController.m @@ -7,12 +7,48 @@ // #import "ViewController.h" +#import "WeatherTableViewController.h" @interface ViewController () +@property (weak, nonatomic) IBOutlet UIButton *saveButtonTapped; @end @implementation ViewController +- (IBAction)saveButtonTapped:(UIButton *)sender { + NSString *saveLatitude = self.lat.text; + NSString *saveLongitude = self.lng.text; + NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; + [defaults setObject:saveLatitude forKey:@"savedLatitude"]; + [defaults setObject:saveLongitude forKey:@"savedLongitude"]; + [defaults synchronize]; + + [self dismissViewControllerAnimated:YES completion:nil]; + +// +// NSString *latCoordinate = self.lat.text; +// NSString *lngCoordinate = self.lng.text; +// +// +// [[NSUserDefaults standardUserDefaults] setObject:latCoordinate forKey:@"savedLatitude"]; +// [[NSUserDefaults standardUserDefaults] setObject:lngCoordinate forKey:@"savedLongitude"]; +// [[NSUserDefaults standardUserDefaults] synchronize]; +// +// [self dismissViewControllerAnimated:YES completion:nil]; +} + +-(void)viewWillAppear:(BOOL)animated { + [super viewWillAppear:YES]; + + NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; + NSString *loadLat = [defaults objectForKey:@"savedLatitude"]; + NSString *loadLng = [defaults objectForKey:@"savedLongitude"]; + + [self.lat setText:loadLat]; + [self.lng setText:loadLng]; + + +} - (void)viewDidLoad { [super viewDidLoad];