sesion para online iniciar descargar actualizacion 6tag windows-phone-7 windows-phone-8

windows-phone-7 - para - 6tag online



Implementando multi touch y pellizcar y acercar el teléfono de Windows 8 (2)

cómo puedo implementar pellizcar para hacer zoom y funciones multi-touch en Windows Phone 8. En mi aplicación agrego 3 contenedores de imágenes en una grilla y necesito realizar la operación mencionada anteriormente en mi imagen. Por favor, cualquiera me ayude a implementar la funcionalidad en mi aplicación. Gracias por adelantado.

Stez


Pruebe la siguiente biblioteca desde codeplex:

https://multitouch.codeplex.com/

Realiza los cálculos necesarios para escalar / girar una imagen cuando está pellizcada.


mi solución que funciona tanto para WP7.5 como para WP8:

Código XAML

<StackPanel x:Name="Scroll" Margin="0"> <Image CacheMode="BitmapCache" Name="FrontCover" Source="{Binding FullCover}" > <Image.RenderTransform> <CompositeTransform x:Name="transform" ScaleX="1" ScaleY="1" /> </Image.RenderTransform> <toolkit:GestureService.GestureListener> <toolkit:GestureListener PinchDelta="OnPinchDelta" PinchStarted="OnPinchStarted" DragDelta="OnDragDelta" /> </toolkit:GestureService.GestureListener> </Image> </StackPanel>

double initialScale; private void OnPinchStarted(object sender, PinchStartedGestureEventArgs e) { initialScale = transform.ScaleX; } private void OnPinchDelta(object sender, PinchGestureEventArgs e) { var curZoom = initialScale * e.DistanceRatio; if (curZoom >= 1 && curZoom <= 3) { transform.ScaleX = curZoom; transform.ScaleY = curZoom; } } private void OnDragDelta(object sender, DragDeltaGestureEventArgs e) { transform.CenterX = (transform.CenterX - e.HorizontalChange); transform.CenterY = (transform.CenterY - e.VerticalChange); if (transform.CenterX < 0) transform.CenterX = 0; else if ( transform.CenterX > Scroll.ActualWidth) transform.CenterX = Scroll.ActualWidth; else if (transform.CenterX > (FrontCover.Height * transform.ScaleX)) transform.CenterX = FrontCover.Height * transform.ScaleX; if (transform.CenterY < 0) transform.CenterY = 0; else if (transform.CenterY > Scroll.ActualHeight) transform.CenterY = Scroll.ActualHeight; else if (transform.CenterY > (FrontCover.Height * transform.ScaleY)) transform.CenterY = FrontCover.Height * transform.ScaleY; }

Piensa que debería ayudar a otros