#import "ChangeViewController.h"
#import "SuccessViewController.h"
#import "FailedViewController.h"
#import "DoingViewController.h"
#define Width [UIScreen mainScreen].bounds.size.width
@interface ChangeViewController ()
{
SuccessViewController *successVC;
FailedViewController *failedVC;
DoingViewController *doVC;
}
@property (weak, nonatomic) IBOutlet UIButton *sucBtn;
@property (weak, nonatomic) IBOutlet UIButton *failedBtn;
@property (weak, nonatomic) IBOutlet UIButton *doBtn;
@property (weak, nonatomic) IBOutlet UIView *baseView;
@property (weak, nonatomic) IBOutlet NSLayoutConstraint *leading;
@end
@implementation ChangeViewController
- (void)viewDidLoad {
[super viewDidLoad];
self.sucBtn.selected = YES;
self.failedBtn.selected = NO;
self.doBtn.selected = NO;
successVC = [[SuccessViewController alloc] initWithNibName:@"SuccessViewController" bundle:nil];
failedVC = [[FailedViewController alloc] initWithNibName:@"FailedViewController" bundle:nil];
doVC = [[DoingViewController alloc] initWithNibName:@"DoingViewController" bundle:nil];
successVC.view.frame = CGRectMake(0, 0, _baseView.frame.size.width, _baseView.frame.size.height);
failedVC.view.frame = CGRectMake(0, 0, _baseView.frame.size.width, _baseView.frame.size.height);
doVC.view.frame = CGRectMake(0, 0, _baseView.frame.size.width, _baseView.frame.size.height);
//先加上的在最底部
[_baseView addSubview:doVC.view];
[_baseView addSubview:failedVC.view];
[_baseView addSubview:successVC.view];
//加入子控制器
[self addChildViewController:successVC];
[self addChildViewController:failedVC];
[self addChildViewController:doVC];
// Do any additional setup after loading the view from its nib.
}
- (IBAction)changeAction:(id)sender {
UIButton *button = (UIButton *)sender;
NSInteger index = button.tag - 100;
if (index == 0) {
self.sucBtn.selected = YES;
self.failedBtn.selected = NO;
self.doBtn.selected = NO;
[_baseView bringSubviewToFront:successVC.view];
}else if (index == 1) {
self.sucBtn.selected = NO;
self.failedBtn.selected = YES;
self.doBtn.selected = NO;
[_baseView bringSubviewToFront:failedVC.view];
}else {
self.sucBtn.selected = NO;
self.failedBtn.selected = NO;
self.doBtn.selected = YES;
[_baseView bringSubviewToFront:doVC.view];
}
//滑动条的动画
CGFloat leadWidth = Width/3;
[UIView animateWithDuration:0.33 animations:^{
_leading.constant = index*leadWidth;
[self.view layoutIfNeeded];
}];
}
xib文件
文件概览