From a0c21cf6fe702fc5bc1a97121f7ab855217201b1 Mon Sep 17 00:00:00 2001 From: Siddharth Sukumar Date: Wed, 7 May 2014 13:52:25 -0700 Subject: [PATCH 01/17] Creating new Background view class --- ChangingBackground.xcodeproj/project.pbxproj | 7 +++++ ChangingBackground/BackgroundImage.h | 25 ++++++++++++++++ ChangingBackground/BackgroundImage.m | 31 ++++++++++++++++++++ ChangingBackground/FirstViewController.m | 3 ++ 4 files changed, 66 insertions(+) create mode 100644 ChangingBackground/BackgroundImage.h create mode 100644 ChangingBackground/BackgroundImage.m diff --git a/ChangingBackground.xcodeproj/project.pbxproj b/ChangingBackground.xcodeproj/project.pbxproj index 2e16be1..d09108e 100644 --- a/ChangingBackground.xcodeproj/project.pbxproj +++ b/ChangingBackground.xcodeproj/project.pbxproj @@ -24,6 +24,7 @@ 001809EC171C6764002D3E93 /* blue@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 001809E8171C6764002D3E93 /* blue@2x.png */; }; 001809ED171C6764002D3E93 /* green.png in Resources */ = {isa = PBXBuildFile; fileRef = 001809E9171C6764002D3E93 /* green.png */; }; 001809EE171C6764002D3E93 /* green@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 001809EA171C6764002D3E93 /* green@2x.png */; }; + D1A9332D191AD3FB00104BD3 /* BackgroundImage.m in Sources */ = {isa = PBXBuildFile; fileRef = D1A9332C191AD3FB00104BD3 /* BackgroundImage.m */; }; /* End PBXBuildFile section */ /* Begin PBXFileReference section */ @@ -50,6 +51,8 @@ 001809E8171C6764002D3E93 /* blue@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "blue@2x.png"; sourceTree = ""; }; 001809E9171C6764002D3E93 /* green.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = green.png; sourceTree = ""; }; 001809EA171C6764002D3E93 /* green@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "green@2x.png"; sourceTree = ""; }; + D1A9332B191AD3FB00104BD3 /* BackgroundImage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BackgroundImage.h; sourceTree = ""; }; + D1A9332C191AD3FB00104BD3 /* BackgroundImage.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = BackgroundImage.m; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -96,6 +99,8 @@ 001809BE171C637E002D3E93 /* ChangingBackground */ = { isa = PBXGroup; children = ( + D1A9332B191AD3FB00104BD3 /* BackgroundImage.h */, + D1A9332C191AD3FB00104BD3 /* BackgroundImage.m */, 001809EF171C6768002D3E93 /* BackgroundImages */, 001809D5171C63FC002D3E93 /* AppDelegate */, 001809DC171C6453002D3E93 /* ViewControllers */, @@ -241,6 +246,7 @@ 001809C5171C637E002D3E93 /* main.m in Sources */, 001809C9171C637E002D3E93 /* AppDelegate.m in Sources */, 001809D9171C6448002D3E93 /* FirstViewController.m in Sources */, + D1A9332D191AD3FB00104BD3 /* BackgroundImage.m in Sources */, 001809E0171C64E4002D3E93 /* SecondViewController.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; @@ -356,6 +362,7 @@ 001809D4171C637E002D3E93 /* Release */, ); defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; }; /* End XCConfigurationList section */ }; diff --git a/ChangingBackground/BackgroundImage.h b/ChangingBackground/BackgroundImage.h new file mode 100644 index 0000000..644b586 --- /dev/null +++ b/ChangingBackground/BackgroundImage.h @@ -0,0 +1,25 @@ +// +// BackgroundImage.h +// ChangingBackground +// +// Created by Siddharth Sukumar on 5/7/14. +// Copyright (c) 2014 Ora Interactive. All rights reserved. +// + +#import + +@interface BackgroundImage : UIView + +@property UIImage *backgroundImage; +@property UIImage *foregroundImage; + +/* + + + @property CGFloat *foregroundAlpha; // private + + - (void)setForegroundAlphaTo:(CGFloat)alpha animated:(BOOL)animated; + + */ + +@end diff --git a/ChangingBackground/BackgroundImage.m b/ChangingBackground/BackgroundImage.m new file mode 100644 index 0000000..7507ea6 --- /dev/null +++ b/ChangingBackground/BackgroundImage.m @@ -0,0 +1,31 @@ +// +// BackgroundImage.m +// ChangingBackground +// +// Created by Siddharth Sukumar on 5/7/14. +// Copyright (c) 2014 Ora Interactive. All rights reserved. +// + +#import "BackgroundImage.h" + +@implementation BackgroundImage + +- (id)initWithFrame:(CGRect)frame +{ + self = [super initWithFrame:frame]; + if (self) { + // Initialization code + } + return self; +} + +/* +// Only override drawRect: if you perform custom drawing. +// An empty implementation adversely affects performance during animation. +- (void)drawRect:(CGRect)rect +{ + // Drawing code +} +*/ + +@end diff --git a/ChangingBackground/FirstViewController.m b/ChangingBackground/FirstViewController.m index 8aedb68..94c4a7a 100644 --- a/ChangingBackground/FirstViewController.m +++ b/ChangingBackground/FirstViewController.m @@ -18,6 +18,9 @@ @implementation FirstViewController - (IBAction)goForwardButtonPressed { SecondViewController *secondViewController = SecondViewController.new; [self.navigationController pushViewController:secondViewController animated:YES]; +// set Green + } @end + From 2e6d04dcd41f6224a4c9abcd916c6375cea4bfe6 Mon Sep 17 00:00:00 2001 From: Siddharth Sukumar Date: Wed, 7 May 2014 14:02:55 -0700 Subject: [PATCH 02/17] Renamed the background view class --- ChangingBackground.xcodeproj/project.pbxproj | 12 ++++++------ .../{BackgroundImage.h => BackgroundView.h} | 3 ++- .../{BackgroundImage.m => BackgroundView.m} | 6 ++++-- ChangingBackground/FirstViewController.m | 11 ++++++++++- 4 files changed, 22 insertions(+), 10 deletions(-) rename ChangingBackground/{BackgroundImage.h => BackgroundView.h} (91%) rename ChangingBackground/{BackgroundImage.m => BackgroundView.m} (89%) diff --git a/ChangingBackground.xcodeproj/project.pbxproj b/ChangingBackground.xcodeproj/project.pbxproj index d09108e..d64eb12 100644 --- a/ChangingBackground.xcodeproj/project.pbxproj +++ b/ChangingBackground.xcodeproj/project.pbxproj @@ -24,7 +24,7 @@ 001809EC171C6764002D3E93 /* blue@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 001809E8171C6764002D3E93 /* blue@2x.png */; }; 001809ED171C6764002D3E93 /* green.png in Resources */ = {isa = PBXBuildFile; fileRef = 001809E9171C6764002D3E93 /* green.png */; }; 001809EE171C6764002D3E93 /* green@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 001809EA171C6764002D3E93 /* green@2x.png */; }; - D1A9332D191AD3FB00104BD3 /* BackgroundImage.m in Sources */ = {isa = PBXBuildFile; fileRef = D1A9332C191AD3FB00104BD3 /* BackgroundImage.m */; }; + D1A9332D191AD3FB00104BD3 /* BackgroundView.m in Sources */ = {isa = PBXBuildFile; fileRef = D1A9332C191AD3FB00104BD3 /* BackgroundView.m */; }; /* End PBXBuildFile section */ /* Begin PBXFileReference section */ @@ -51,8 +51,8 @@ 001809E8171C6764002D3E93 /* blue@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "blue@2x.png"; sourceTree = ""; }; 001809E9171C6764002D3E93 /* green.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = green.png; sourceTree = ""; }; 001809EA171C6764002D3E93 /* green@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "green@2x.png"; sourceTree = ""; }; - D1A9332B191AD3FB00104BD3 /* BackgroundImage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BackgroundImage.h; sourceTree = ""; }; - D1A9332C191AD3FB00104BD3 /* BackgroundImage.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = BackgroundImage.m; sourceTree = ""; }; + D1A9332B191AD3FB00104BD3 /* BackgroundView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BackgroundView.h; sourceTree = ""; }; + D1A9332C191AD3FB00104BD3 /* BackgroundView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = BackgroundView.m; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -99,8 +99,8 @@ 001809BE171C637E002D3E93 /* ChangingBackground */ = { isa = PBXGroup; children = ( - D1A9332B191AD3FB00104BD3 /* BackgroundImage.h */, - D1A9332C191AD3FB00104BD3 /* BackgroundImage.m */, + D1A9332B191AD3FB00104BD3 /* BackgroundView.h */, + D1A9332C191AD3FB00104BD3 /* BackgroundView.m */, 001809EF171C6768002D3E93 /* BackgroundImages */, 001809D5171C63FC002D3E93 /* AppDelegate */, 001809DC171C6453002D3E93 /* ViewControllers */, @@ -246,7 +246,7 @@ 001809C5171C637E002D3E93 /* main.m in Sources */, 001809C9171C637E002D3E93 /* AppDelegate.m in Sources */, 001809D9171C6448002D3E93 /* FirstViewController.m in Sources */, - D1A9332D191AD3FB00104BD3 /* BackgroundImage.m in Sources */, + D1A9332D191AD3FB00104BD3 /* BackgroundView.m in Sources */, 001809E0171C64E4002D3E93 /* SecondViewController.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; diff --git a/ChangingBackground/BackgroundImage.h b/ChangingBackground/BackgroundView.h similarity index 91% rename from ChangingBackground/BackgroundImage.h rename to ChangingBackground/BackgroundView.h index 644b586..8c1edef 100644 --- a/ChangingBackground/BackgroundImage.h +++ b/ChangingBackground/BackgroundView.h @@ -8,11 +8,12 @@ #import -@interface BackgroundImage : UIView +@interface BackgroundView : UIView @property UIImage *backgroundImage; @property UIImage *foregroundImage; + /* diff --git a/ChangingBackground/BackgroundImage.m b/ChangingBackground/BackgroundView.m similarity index 89% rename from ChangingBackground/BackgroundImage.m rename to ChangingBackground/BackgroundView.m index 7507ea6..075c8c3 100644 --- a/ChangingBackground/BackgroundImage.m +++ b/ChangingBackground/BackgroundView.m @@ -6,9 +6,9 @@ // Copyright (c) 2014 Ora Interactive. All rights reserved. // -#import "BackgroundImage.h" +#import "BackgroundView.h" -@implementation BackgroundImage +@implementation BackgroundView - (id)initWithFrame:(CGRect)frame { @@ -19,6 +19,8 @@ - (id)initWithFrame:(CGRect)frame return self; } + + /* // Only override drawRect: if you perform custom drawing. // An empty implementation adversely affects performance during animation. diff --git a/ChangingBackground/FirstViewController.m b/ChangingBackground/FirstViewController.m index 94c4a7a..2620a8b 100644 --- a/ChangingBackground/FirstViewController.m +++ b/ChangingBackground/FirstViewController.m @@ -15,10 +15,19 @@ @interface FirstViewController () @implementation FirstViewController +- (void)viewWillAppear:(BOOL)animated { + + [super viewWillAppear:YES]; + + + + + +} + - (IBAction)goForwardButtonPressed { SecondViewController *secondViewController = SecondViewController.new; [self.navigationController pushViewController:secondViewController animated:YES]; -// set Green } From 44fe708afd996fc63925f54e198255f093fceb69 Mon Sep 17 00:00:00 2001 From: Siddharth Sukumar Date: Wed, 7 May 2014 14:07:21 -0700 Subject: [PATCH 03/17] Made a few xib file changes - Changed the class of the main view to Background iew --- ChangingBackground/FirstViewController.xib | 258 +++--------------- ChangingBackground/SecondViewController.xib | 284 +++----------------- 2 files changed, 82 insertions(+), 460 deletions(-) diff --git a/ChangingBackground/FirstViewController.xib b/ChangingBackground/FirstViewController.xib index 0dd58c2..dc2c488 100644 --- a/ChangingBackground/FirstViewController.xib +++ b/ChangingBackground/FirstViewController.xib @@ -1,217 +1,41 @@ - - - - 1552 - 12C3006 - 3084 - 1187.34 - 625.00 - - com.apple.InterfaceBuilder.IBCocoaTouchPlugin - 2083 - - - IBProxyObject - IBUIButton - IBUILabel - IBUIView - - - com.apple.InterfaceBuilder.IBCocoaTouchPlugin - - - PluginDependencyRecalculationVersion - - - - - IBFilesOwner - IBCocoaTouchFramework - - - IBFirstResponder - IBCocoaTouchFramework - - - - 274 - - - - 292 - {{77, 115}, {166, 21}} - - - _NS:9 - NO - YES - 7 - NO - IBCocoaTouchFramework - Home View Controller - - 1 - MCAwIDAAA - darkTextColor - - - 0 - - 1 - 17 - - - Helvetica - 17 - 16 - - NO - - - - 292 - {{102, 180}, {109, 44}} - - _NS:9 - NO - IBCocoaTouchFramework - 0 - 0 - 1 - Go Forward - - 3 - MQA - - - 1 - MC4xOTYwNzg0MzQ2IDAuMzA5ODAzOTMyOSAwLjUyMTU2ODY1NgA - - - 3 - MC41AA - - - 2 - 15 - - - Helvetica-Bold - 15 - 16 - - - - {{0, 20}, {320, 548}} - - - 3 - MQA - - 2 - - - - - IBUIScreenMetrics - - YES - - - - - - {320, 568} - {568, 320} - - - IBCocoaTouchFramework - Retina 4 Full Screen - 2 - - IBCocoaTouchFramework - - - - - - - view - - - - 3 - - - - goForwardButtonPressed - - - 7 - - 8 - - - - - - 0 - - - - - - 1 - - - - - - - - - -1 - - - File's Owner - - - -2 - - - - - 4 - - - - - 7 - - - - - - - FirstViewController - com.apple.InterfaceBuilder.IBCocoaTouchPlugin - UIResponder - com.apple.InterfaceBuilder.IBCocoaTouchPlugin - com.apple.InterfaceBuilder.IBCocoaTouchPlugin - com.apple.InterfaceBuilder.IBCocoaTouchPlugin - com.apple.InterfaceBuilder.IBCocoaTouchPlugin - - - - - - 8 - - - 0 - IBCocoaTouchFramework - YES - 3 - 2083 - - + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/ChangingBackground/SecondViewController.xib b/ChangingBackground/SecondViewController.xib index d603949..1edd980 100644 --- a/ChangingBackground/SecondViewController.xib +++ b/ChangingBackground/SecondViewController.xib @@ -1,243 +1,41 @@ - - - - 1552 - 12C3006 - 3084 - 1187.34 - 625.00 - - com.apple.InterfaceBuilder.IBCocoaTouchPlugin - 2083 - - - IBProxyObject - IBUIButton - IBUILabel - IBUIView - - - com.apple.InterfaceBuilder.IBCocoaTouchPlugin - - - PluginDependencyRecalculationVersion - - - - - IBFilesOwner - IBCocoaTouchFramework - - - IBFirstResponder - IBCocoaTouchFramework - - - - 274 - - - - 292 - {{71, 118}, {209, 21}} - - - - _NS:9 - NO - YES - 7 - NO - IBCocoaTouchFramework - Second View Controller - - 1 - MCAwIDAAA - darkTextColor - - - 0 - - 1 - 17 - - - Helvetica - 17 - 16 - - NO - - - - 292 - {{118, 178}, {85, 44}} - - - _NS:9 - NO - IBCocoaTouchFramework - 0 - 0 - 1 - Go Back - - 3 - MQA - - - 1 - MC4xOTYwNzg0MzQ2IDAuMzA5ODAzOTMyOSAwLjUyMTU2ODY1NgA - - - 3 - MC41AA - - - 2 - 15 - - - Helvetica-Bold - 15 - 16 - - - - {{0, 20}, {320, 548}} - - - - - 3 - MQA - - 2 - - - - - IBUIScreenMetrics - - YES - - - - - - {320, 568} - {568, 320} - - - IBCocoaTouchFramework - Retina 4 Full Screen - 2 - - IBCocoaTouchFramework - - - - - - - view - - - - 3 - - - - goBackButtonPressed - - - 7 - - 10 - - - - - - 0 - - - - - - 1 - - - - - - - - - -1 - - - File's Owner - - - -2 - - - - - 4 - - - - - 7 - - - - - - - SecondViewController - com.apple.InterfaceBuilder.IBCocoaTouchPlugin - UIResponder - com.apple.InterfaceBuilder.IBCocoaTouchPlugin - com.apple.InterfaceBuilder.IBCocoaTouchPlugin - com.apple.InterfaceBuilder.IBCocoaTouchPlugin - com.apple.InterfaceBuilder.IBCocoaTouchPlugin - - - - - - 10 - - - - - SecondViewController - UIViewController - - goBackButtonPressed - id - - - goBackButtonPressed - - goBackButtonPressed - id - - - - IBProjectSource - ./Classes/SecondViewController.h - - - - - 0 - IBCocoaTouchFramework - YES - 3 - 2083 - - + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file From 082347bcb44555315a85164c7c8f5c573a6ea601 Mon Sep 17 00:00:00 2001 From: Siddharth Sukumar Date: Wed, 7 May 2014 14:46:47 -0700 Subject: [PATCH 04/17] Added imageViews to the background view --- ChangingBackground/BackgroundView.h | 4 +-- ChangingBackground/BackgroundView.m | 33 +++++++++++++++++++++- ChangingBackground/FirstViewController.m | 5 ++-- ChangingBackground/FirstViewController.xib | 14 +++++++-- 4 files changed, 48 insertions(+), 8 deletions(-) diff --git a/ChangingBackground/BackgroundView.h b/ChangingBackground/BackgroundView.h index 8c1edef..a40fc21 100644 --- a/ChangingBackground/BackgroundView.h +++ b/ChangingBackground/BackgroundView.h @@ -10,8 +10,8 @@ @interface BackgroundView : UIView -@property UIImage *backgroundImage; -@property UIImage *foregroundImage; +@property (nonatomic, strong) UIImage *backgroundImage; +@property (nonatomic, strong) UIImage *foregroundImage; /* diff --git a/ChangingBackground/BackgroundView.m b/ChangingBackground/BackgroundView.m index 075c8c3..36f16c8 100644 --- a/ChangingBackground/BackgroundView.m +++ b/ChangingBackground/BackgroundView.m @@ -8,18 +8,49 @@ #import "BackgroundView.h" +@interface BackgroundView () +@property (nonatomic, strong) IBOutlet UIImageView *backgroundImageView; +@property (nonatomic, strong) UIImageView *foregroundImageView; + +@end + @implementation BackgroundView +@synthesize backgroundImage; - (id)initWithFrame:(CGRect)frame { self = [super initWithFrame:frame]; if (self) { - // Initialization code + + } + return self; +} + +- (id)initWithCoder:(NSCoder *)aDecoder { + self = [super initWithCoder:aDecoder]; + + if (self) { + self.backgroundImageView = [[UIImageView alloc]initWithFrame:CGRectMake(0, 0, 320, 535)]; + + self.foregroundImageView = [[UIImageView alloc]initWithFrame:CGRectMake(0, 0, 320, 535)]; + + [self addSubview:self.backgroundImageView]; + [self addSubview:self.foregroundImageView]; } return self; + + + + } +- (void)setBackgroundImage:(UIImage *)backgroundImage { + + self.backgroundImageView.image = backgroundImage; + +} + /* // Only override drawRect: if you perform custom drawing. diff --git a/ChangingBackground/FirstViewController.m b/ChangingBackground/FirstViewController.m index 2620a8b..ca31a58 100644 --- a/ChangingBackground/FirstViewController.m +++ b/ChangingBackground/FirstViewController.m @@ -8,8 +8,10 @@ #import "FirstViewController.h" #import "SecondViewController.h" +#import "BackgroundView.h" @interface FirstViewController () +@property (strong, nonatomic) IBOutlet BackgroundView *myView; @end @@ -18,8 +20,7 @@ @implementation FirstViewController - (void)viewWillAppear:(BOOL)animated { [super viewWillAppear:YES]; - - + self.myView.backgroundImage = [UIImage imageNamed:@"blue@2x.png"]; diff --git a/ChangingBackground/FirstViewController.xib b/ChangingBackground/FirstViewController.xib index dc2c488..519500e 100644 --- a/ChangingBackground/FirstViewController.xib +++ b/ChangingBackground/FirstViewController.xib @@ -7,6 +7,7 @@ + @@ -15,12 +16,16 @@ + + + +