UIView с анимацией не виден
Я хотел бы сделать MenuView
дисплей с анимацией.
Когда я звоню -showSideMenu
, MenuView
не появляются.
Как мне это исправить?
MenuView.h
#import <UIKit/UIKit.h>
@interface SettingView : UIView
@end
MenuView.m
- (id)initWithFrame:(CGRect)frame
{
self = [super initWithFrame:frame];
if (self)
{
self.frame = CGRectMake(320, 0, 240, 568);
self.backgroundColor = [UIColor turquoiseColor];
}
return self;
}
MasterViewController.m
@property (nonatomic, strong) MenuView* sideMenuView;
- (void)viewDidLoad
{
[super viewDidLoad];
UIBarButtonItem* menuButton = [[UIBarButtonItem alloc]initWithBarButtonSystemItem:UIBarButtonSystemItemAction target:self action:@selector(showSideMenu:)];
self.navigationItem.rightBarButtonItem = menuButton;
self.sideMenuView = [[MenuView alloc]initWithFrame:self.view.frame];
[self.view addSubview:self.sideMenuView];
}
- (IBAction)showSideMenu:(id)sender
{
[UIView animateWithDuration:0.3f
delay:0.0f
options:UIViewAnimationOptionCurveEaseIn
animations:^{
self.sideMenuView.frame = CGRectMake(80, 0, 240, 568);
}
completion:^(BOOL finished) {
}];
}
1 ответ
Решение
Пара вещей:
- Поместите NSLog в метод showSideMenu. Это на самом деле огонь?
- Вы оживляете кадр. У вас есть AutoLayout выключен для этого контроллера представления?