Pergunta

Não entendo como traduzir as coordenadas do iPhone.

Se eu fizer um único toque, recebo a coordenada.

Se eu fizer um toque e mantê -lo e liberá -lo, ele mostra a diferença do ponto inicial e final.

Como faço para obter a posição absoluta do toque?

obrigado!

-(void) touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
    UITouch *touch = [[event allTouches] anyObject];
    CGPoint location = [touch locationInView:touch.view];
    NSLog(@"X: %f",location.x);
    NSLog(@"Y: %f",location.y);
}

Eu quero redimensionar uma imagem com toque e arrasto (apenas a altura)

Foi útil?

Solução

A posição de um toque é calculada em relação a uma visualização.

Se você deseja a posição em relação à tela:

UITouch * touch = [touches anyObject];
CGPoint pos = [touch locationInView: [UIApplication sharedApplication].keyWindow];
NSLog(@"Position of touch: %.3f, %.3f", pos.x, pos.y);

(Codificado a seco, pode dar erros)

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top