Just check the specified bounds in touchesMoved. You could try something like this.
Code:
- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event
{
UITouch *touch = [touches anyObject];
CGPoint pt = [touch locationInView:self.view];
// Check your bounds using pt
// If you are good, you can then move the image
[imageView setCenter:pt];
}