拖回到相同位置

时间:2013-01-17 04:03:45

标签: iphone ios

我在我的应用程序中使用拖动选项,因为我想将对象设置在相同位置,即拖回到相同位置后,我尝试使用以下编码设置为som其他位置,我应该做什么改变此,

- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event
{
CGPoint touchPoint = [[touches anyObject] locationInView:self.view];
if (touchPoint.x > self.img1.frame.origin.x &&
    touchPoint.x < self.img1.frame.origin.x + self.img1.frame.size.width &&
    touchPoint.y > self.img1.frame.origin.y &&
    touchPoint.y < self.img1.frame.origin.y + self.img1.frame.size.height )
{
    self.img1.backgroundColor = self.img1.backgroundColor;

}
self.img1.frame = CGRectMake(self.homePosition.x, self.homePosition.y,
                                   self.img1.frame.size.width,
                                   self.img1.frame.size.height);
}

1 个答案:

答案 0 :(得分:1)

.h

CGPoint startPt;

.m

-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event{
    startPt = [[touches anyObject] locationInView:self.view];

}

- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event
{
CGPoint touchPoint = [[touches anyObject] locationInView:self.view];
if (touchPoint.x > self.img1.frame.origin.x &&
    touchPoint.x < self.img1.frame.origin.x + self.img1.frame.size.width &&
    touchPoint.y > self.img1.frame.origin.y &&
    touchPoint.y < self.img1.frame.origin.y + self.img1.frame.size.height )
{
    self.img1.backgroundColor = self.img1.backgroundColor;

}
self.img1.frame = CGRectMake(startPt.x, startPt.y,
                                   self.img1.frame.size.width,
                                   self.img1.frame.size.height);
}