我在IB上的另一个"主要"视图中添加了UIView。我的应用程序仅处于横向模式。我想通过按下按钮,另一个 UIView 从底部滑入。所以,目前它根本不在图片中,但是当按下按钮时,视图从底部出现并滑到位。稍后我将使用与切换相同的按钮工作,然后将 UIVIew 滑出。UIView 不是屏幕的大小,否则我会以模式呈现它。
这是我尝试过的代码:
.m
-(IBAction)onGearBag:(UIButton *)sender
{
[sender setEnabled:NO];
[UIView animateWithDuration:0.5 delay:0.0 options:UIViewAnimationOptionCurveEaseInOut animations:^{
if (gearBag.transform.ty == 0) {
[gearBag setTransform:CGAffineTransformMakeTranslation(0, -400)];
}else{
[gearBag setTransform:CGAffineTransformMakeTranslation(0, -200)];
}
}completion:^(BOOL done){
//some completion handler
[sender setEnabled:YES];
}];
}
.h
@interface MyEquipmentViewController : PFViewController
{
IBOutlet UIView *gearBag;
}
@property (strong, nonatomic) TabsTopBar *topbar;
- (IBAction)onPopoverButton:(UIButton *)sender;
- (IBAction)actionHelp:(id)sender;
- (IBAction)onGearBag:(id)sender;
@end
.h
@interface MyEquipmentViewController : PFViewController
{
IBOutlet UIView *popoverInitAlert;
__unsafe_unretained IBOutlet UIImageView *imageView;
IBOutlet UIView *gearBag;
}
@property (strong, nonatomic) TabsTopBar *topbar;
- (IBAction)onPopoverButton:(UIButton *)sender;
- (IBAction)actionHelp:(id)sender;
- (IBAction)onGearBag:(id)sender;
@end
简单的视图动画:
- (IBAction)myIBAction:(UIButton *)sender
{
[sender setEnabled:NO];
[UIView animateWithDuration:0.5 delay:0.0 options:UIViewAnimationOptionCurveEaseInOut animations:^{
if (mySecondView.transform.ty == 0) {
[mySecondView setTransform:CGAffineTransformMakeTranslation(0, -400)];
}else{
[mySecondView setTransform:CGAffineTransformMakeTranslation(0, 0)];
}
}completion:^(BOOL done){
//some completion handler
[sender setEnabled:YES];
}];
}