Iphone 我想问一个问题。当UIView完全隐藏时,如何获得通知?

Iphone 我想问一个问题。当UIView完全隐藏时,如何获得通知?,iphone,uiview,uiscrollview,Iphone,Uiview,Uiscrollview,我有一个UIView条带,在UIView“窗口”后面水平滑动。只能看到“窗口”边界内的UIView。当视图被隐藏时,我希望得到通知,这样我就可以用隐藏的视图执行一些任务。最好的方法是什么?在动画中添加回调选择器: [UIView beginAnimations:nil context:NULL]; [UIView setAnimationDuration:0.5]; [UIView setAnimationTransition:UIViewAnimationTransit

我有一个UIView条带,在UIView“窗口”后面水平滑动。只能看到“窗口”边界内的UIView。当视图被隐藏时,我希望得到通知,这样我就可以用隐藏的视图执行一些任务。最好的方法是什么?

在动画中添加回调选择器:

    [UIView beginAnimations:nil context:NULL];
    [UIView setAnimationDuration:0.5];
    [UIView setAnimationTransition:UIViewAnimationTransitionNone forView:theView cache:NO];
    [UIView setAnimationDidStopSelector:@selector(animationDone)];
    theView.frame = newFrame;
    [UIView commitAnimations];

在您的UIScrollViewDelegate中:

- (void)scrollViewDidScroll:(UIScrollView *)scrollView {
    // left and right bounds of the subview in relation to the scrollview
    CGFloat left = mySubview.frame.origin.x - myScrollView.contentOffset.x;
    CGFloat right = left+mySubview.frame.size.width - myScrollView.contentOffset.x;
    if(right<=0 || left>=myScrollView.frame.size.width){
        // The view is not visible
    }
}
-(无效)scrollViewDidScroll:(UIScrollView*)scrollView{
//子视图相对于scrollview的左右边界
CGFloat left=mySubview.frame.origin.x-myScrollView.contentOffset.x;
CGFloat right=left+mySubview.frame.size.width-myScrollView.contentOffset.x;
if(right=myScrollView.frame.size.width){
//视图不可见
}
}

这将检查子视图的左侧或右侧是否可见。

哎呀,我现在意识到我给人的印象是,这是一个动画,在这种情况下,您的答案将完全正确。我的错。实际上,“窗口”是我们的朋友UIScrollView。我已经研究了UIScrollView和UIScrollViewDelegate方法,但似乎没有什么符合要求。