tôi đã quản lý để thực hiện zoom nhúm và panning bởi hooking đến các sự kiện ManipulationDelta và ManipulationStarted (trên một điều khiển hình ảnh):mượt pinch-phóng to và panning trên Windows Phone 8
private void image_OnManipulationDelta(object sender, ManipulationDeltaEventArgs e)
{
var transform = (CompositeTransform)image.RenderTransform;
// pan
transform.TranslateX = _translationX + e.CumulativeManipulation.Translation.X;
transform.TranslateY = _translationY + e.CumulativeManipulation.Translation.Y;
// zoom
if (e.PinchManipulation != null)
{
transform.CenterX = e.PinchManipulation.Original.Center.X;
transform.CenterY = e.PinchManipulation.Original.Center.Y;
transform.ScaleX = _scaleX * e.PinchManipulation.CumulativeScale;
transform.ScaleY = _scaleY * e.PinchManipulation.CumulativeScale;
}
}
private void image_OnManipulationStarted(object sender, ManipulationStartedEventArgs e)
{
// the user has started manipulating the screen, set starting points
var transform = (CompositeTransform)image.RenderTransform;
_scaleX = transform.ScaleX;
_scaleY = transform.ScaleY;
_translationX = transform.TranslateX;
_translationY = transform.TranslateY;
}
Nhưng so với sự êm ái của phần còn lại của cửa sổ điện thoại giao diện người dùng nó cảm thấy rất placid và cứng. Không có quán tính trong phong trào.
Có cách nào giúp chuyển động mượt mà hơn không? Có sử dụng hoạt ảnh và bảng phân cảnh để tìm hiểu về nó không? Tôi đã thử bằng cách sử dụng ScrollView cho ít nhất nhận được panning mịn nhưng sau đó các sự kiện ManipulationDelta không bắn chính xác.
Chỉ cần một bản cập nhật như các câu hỏi dường như là phổ biến: Tôi đã kết thúc bằng cách sử dụng mã trên kết hợp với hình ảnh động được tạo lập trình để có được cảm giác "quán tính" đó. Tôi cũng đã phải tối ưu hóa bằng cách sử dụng điều khiển đơn giản (canvases và hình ảnh bitmap lưu trữ), để có được nó chạy trơn tru. – Pking
Có thể trùng lặp - Được giải thích ở đây. [http://stackoverflow.com/questions/13969400/pinch-to-zoom-functionality-in-windows-phone-8](http://stackoverflow.com/questions/13969400/pinch-to-zoom-functionality- trong cửa sổ-điện thoại-8) –