我已将 UIView 添加到 IB 上的另一个“主” View 。我的应用程序仅处于横向模式。我想让它通过按下按钮,另一个 UIView 从底部滑入。因此,目前它根本不在图片中,但是当按下按钮时, View 会从底部出现并滑入到位。稍后我将使用相同的按钮作为切换按钮,然后将 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
最佳答案
简单的 View 动画:
- (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];
}];
}
关于iphone - 如何在横向模式下从底部滑动UIView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12545048/