2012-02-21 52 views
0

我有一個背景視圖(UIImageView),我添加一個視圖(UIView)。 這個contentView(UIView)包含UIPanGestureRecognizer。查看離開視圖邊界

我給UIPanGestureRecognizer到內容查看貝婁代碼:

UIPanGestureRecognizer *panRecognizer = [[UIPanGestureRecognizer alloc]initWithTarget:self action:@selector(movePhoto:)]; 
[panRecognizer setMinimumNumberOfTouches:1]; 
[panRecognizer setDelegate:self]; 
[contentView addGestureRecognizer:panRecognizer]; 
[panRecognizer release]; 

然後我加入這個內容查看到後臺視圖(的UIImageView)由婁代碼:

[imgBG addSubview:contentView]; // here imgBG is Background view. 

但是當我提出這個contentView會從imgBG中退出。

波紋管是將內容查看

[[[(UITapGestureRecognizer*)sender view] layer] removeAllAnimations]; 

[self.view bringSubviewToFront:[(UIPanGestureRecognizer*)sender view]]; 
CGPoint translatedPoint = [(UIPanGestureRecognizer*)sender translationInView:self.view]; 

if([(UIPanGestureRecognizer*)sender state] == UIGestureRecognizerStateBegan) 
{ 
    firstX = [[sender view] center].x; 
    firstY = [[sender view] center].y; 
} 
translatedPoint = CGPointMake(firstX+translatedPoint.x, firstY+translatedPoint.y); 
[[sender view] setCenter:translatedPoint]; 

CGFloat finalX = [sender view].center.x; 
CGFloat finalY = [sender view].center.y; 
[[sender view] setCenter:CGPointMake(finalX, finalY)]; 

我想方法,這裏的內容查看仍應imgBG內,因爲它是imgBG的子視圖。

請讓我知道我的代碼是否存在問題,或者是由於UIPanGestureRecognizer引起的問題。

在此先感謝。

回答

2

我只是不得不做:

[imgBG setClipsToBounds:YES];