2012-02-17 6 views
0

Я делаю рисунок с приложением для пальцев.Цель C: Начальная точка и конечная точка

Я хочу установить начальную точку и конечную точку.

Мой проект подобен этому, у него есть фон, который расскажет вам направление рисования. когда пользователь попадает в конечную точку, фон будет меняться.

я попытался это ... На прикосновений началось ...

drawPoint = [touch locationInView:self.view]; 
    CGRect writingStartPoint = CGRectMake(90, 800, 30, 30); 
    CGRect writingEndPoint = CGRectMake(390, 800, 30, 30); 

    if (CGRectContainsPoint(writingStartPoint, drawPoint)) 
    { 
     //something 
    } 

    if (CGRectContainsPoint(writingEndPoint, drawPoint)) 
     { 
      //change background 
     } 

это не работает.

Есть ли другой способ?

+0

прежде всего 90 800 звучит, как его покинуть ваш взгляд? Я мог ошибаться, если ты на портрете. Во-вторых, запишите свой drawPoint и убедитесь, что он находится в той же системе координат, что и ваши исправления. –

ответ

1

вы должны проверить, является сенсорным в конечном прямоугольнике на ощупь перемещено или закончился метод

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event { 
    UITouch *touch = [touches anyObject]; 
    CGPoint drawPoint = [touch locationInView:self.view]; 
    CGRect writingStartPoint = CGRectMake(90, 800, 30, 30); 
    if (CGRectContainsPoint(writingStartPoint, drawPoint)) 
    { 
     //something 
    } 
} 

- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event { 
    UITouch *touch = [touches anyObject]; 
    CGPoint drawPoint = [touch locationInView:self.view]; 
    CGRect writingEndPoint = CGRectMake(390, 800, 30, 30); 
    if (CGRectContainsPoint(writingEndPoint, drawPoint)) 
    { 
     //change background if you want user see change without lift finger up 
    } 
} 

- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event { 
    UITouch *touch = [touches anyObject]; 
    CGPoint drawPoint = [touch locationInView:self.view]; 
    CGRect writingEndPoint = CGRectMake(390, 800, 30, 30); 
    if (CGRectContainsPoint(writingEndPoint, drawPoint)) 
    { 
     //change background when user lift finger up 
    } 
} 

- (void)touchesCancelled:(NSSet *)touches withEvent:(UIEvent *)event { 
    // handle cancel event 
} 
+0

спасибо вам большое! – SeongHo