I would prefer first download the project from below link and then continue with question (only 36kb)
At start what I have is like below.
When I click My Office button, I am calling action actionSeenButton
which will print NSLog(@"actionSeenButton");
- (IBAction)actionSeenButton:(id)sender {
NSLog(@"actionSeenButton");
}
This works perfect.
When I click, Show hidden button, I am sliding view by 100 and showing the image and buttons that I have at the top, as shown in below image
Code used is
- (IBAction)showHiddenButton:(id)sender {
CGAffineTransform translation = CGAffineTransformIdentity;
translation = CGAffineTransformMakeTranslation(0, 100);
[UIView beginAnimations:nil context:nil];
self.view.transform = translation;
[UIView commitAnimations];
}
When I click this button, I am calling action actionHiddenButton
which will print NSLog(@"actionHiddenButton");
- (IBAction)actionHiddenButton:(id)sender {
NSLog(@"actionHiddenButton");
}
BUT the problem is, when I click the new button that I see, action is not getting called.
Any idea why this is happening?
When I move the top hidden button from y=-70 to y=170, action is getting called.
Sample project can be downloaded from here
What I wanted to implement is, showing three buttons (as menu) on the top in one line by moving view down.
Yipeee!!! Below is how I did.
Added new variable.
@property (retain, nonatomic) NSString *hideStatus;
-(void) viewDidAppear:(BOOL)animated {
NSLog(@"viewDidAppear");
CGAffineTransform translation = CGAffineTransformIdentity;
translation = CGAffineTransformMakeTranslation(0, -100);
self.view.transform = translation;
self.view.clipsToBounds = YES;
[UIView commitAnimations];
self.view.frame = CGRectMake(0,-80,320,560);
hideStatus = @"hidden";
}
- (IBAction)showHiddenButton:(id)sender {
NSLog(@"hideStatus===%@", hideStatus);
CGAffineTransform translation = CGAffineTransformIdentity;
if ([hideStatus isEqualToString:@"hidden"]) {
translation = CGAffineTransformMakeTranslation(0, 0);
hideStatus = @"shown";
} else {
translation = CGAffineTransformMakeTranslation(0, -100);
hideStatus = @"hidden";
}
[UIView beginAnimations:nil context:nil];
self.view.transform = translation;
self.view.clipsToBounds = YES;
[UIView commitAnimations];
}
Attached is the sample project. You can download from here.