我有一个名为sineWave的UIView
呈现动画正弦波。我通过[self.view addSubview:self.sineWave];
添加sineWave作为子视图。我有另一个名为panedView的UIView
,它是最高/顶视图/图层。当panedView被拖动时,会显示sineWave视图。我通过[self.view insertSubview:panedView aboveSubview:self.sineWave];
在sineWave视图上面添加了panedView。当我全力以赴时,一切都很完美。但是,由于添加sineWave视图,我有一个问题是向上滑动。当我向上滑动时,我可以看到滑动方法被调用,但我的视图并没有向上移动到应有的位置。但是,如果我在第一次滑动后立即再次滑动,我的视图将移动到其编程的位置 - 显示正弦波。知道为什么会这样吗?
- (IBAction)handleUpSwipe:(UISwipeGestureRecognizer *)recognizer
{
NSLog(@"Swipe UP");
[UIView animateWithDuration:.1 delay:0 options:UIViewAnimationOptionCurveLinear animations:^{
panedView.frame = CGRectOffset(panedView.frame, 0, -1*self.view.bounds.size.height*.80);
} completion:nil];
[self displaySine];
}
-(void) displaySine
{
if(sineIsDisplaying == NO)
{
self.sineWave = [[OSDrawWave alloc] initWithFrame:CGRectMake(-1*self.view.bounds.size.width, (.75*self.view.bounds.size.height), 2*self.view.bounds.size.width, .3125*(2*self.view.bounds.size.width))];
[self.sineWave setBackgroundColor:[UIColor clearColor]];
[self.sineWave animateWave];
[self.view addSubview:self.sineWave];
[self.view insertSubview:panedView aboveSubview:self.sineWave];
sineIsDisplaying = YES;
}
}