【发布时间】:2012-05-29 01:10:38
【问题描述】:
我试图在滑动时更改视图。我已经通过更改背景颜色进行了测试,因此可以找到滑动工作。
从那时起,我添加了一个新的 view.nib 并将类设置为与当前视图相同。 在这个类 .h 文件中我已经完成了这个
@interface MasterViewController : UIViewController <UIGestureRecognizerDelegate>{
UIView *myView;
UIView *secondView;
}
@property (strong, nonatomic) IBOutlet UIView *myView; // attached to Viewcontroller nib
@property (strong, nonatomic) IBOutlet UIView *secondView; // attached to the secondView
- (void)swipedScreen;
MyView 是首先出现的主视图,secondView 是我创建并更改其类以与此视图相关的 nib 的视图。
从那里我在 .m 文件中完成了这项工作
- (void) setupSwipeGestureRecognizer {
UISwipeGestureRecognizer *swipeGesture = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(swipedScreen)];
swipeGesture.direction = (UISwipeGestureRecognizerDirectionRight|UISwipeGestureRecognizerDirectionLeft);
[myView addGestureRecognizer:swipeGesture];
}
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view from its nib.
self.title = @"Prototype";
[self setupSwipeGestureRecognizer];
}
- (void)swipedScreen
{
// Not sure what to do here.
[[NSBundle mainBundle] loadNibNamed:@"SecondView" owner:self options:nil];
}
我只是不知道在 swipedScreen 方法中要做什么才能让 secondView 出现。我想为这个视图设置动画以从右侧滑入。但目前实际上只是获得视图到出现...不确定我在这里做错了什么,但显然它是非常基本的。
任何帮助将不胜感激。
【问题讨论】:
-
好吧,只需使用动画来改变你的
secondView位置动画,当它在正确的位置时,隐藏myView。这不是最好的解决方案,但可以解决您的问题。 -
谢谢..希望有更优雅的东西..谢谢你的建议,但我会记住的。
-
好吧,如果您没有其他解决方案,这是一个备用计划。 :-)
标签: iphone ios uiview uiviewcontroller