2012-01-19 3 views
0

Я попытался создать простой конструктор коллажей для Android. Каждое изображение можно перемещать, поворачивать, масштабировать. Используйте этот код:Преобразование изображений в мобильных приложениях

var os:Sprite = new Sprite(); 
os.cacheAsBitmap = true; 
       os.cacheAsBitmapMatrix = new Matrix(); 
       Multitouch.inputMode = MultitouchInputMode.GESTURE; 
       if (Multitouch.supportsGestureEvents){ 
        os.addEventListener(TransformGestureEvent.GESTURE_ROTATE , onRotate); 
        os.addEventListener(TransformGestureEvent.GESTURE_ZOOM , onZoom); 
        os.addEventListener(TransformGestureEvent.GESTURE_PAN , onPan); 
       } 
       os.addEventListener(MouseEvent.MOUSE_DOWN, onDown); 
       os.addEventListener(MouseEvent.MOUSE_UP, onUp); 

protected function onRotate(event:TransformGestureEvent):void 
      { 
       event.target.rotation += event.rotation; 
      } 

      protected function onZoom(event:TransformGestureEvent):void 
      { 
       event.target.scaleX *= event.scaleX; 
       event.target.scaleY *= event.scaleY; 
      } 

      protected function onPan(event:TransformGestureEvent):void 
      { 
       event.target.x = event.offsetX; 
       event.target.y = event.offsetY; 
      } 
      protected function onDown(e:MouseEvent):void 
      { 
       os.startDrag(); 
       e.stopPropagation(); 
      } 

      protected function onUp(e:MouseEvent):void 
      { 
       os.stopDrag(); 
      } 

Однако масштабирование изображений не является гладким, изображение внезапно меняет размер, движение тянется. Хотя у меня достаточно мощное устройство для тестирования. Я не могу использовать стандартный способ, используя маркеры, потому что изображения довольно малы, и коснуться пальца в маркер будет сложно.

Подскажите примеры кода, как это можно реализовать, пожалуйста.

ответ

1

Вы используете «gpu» renderMode для тестирования? И попробуйте использовать растровое изображение вместо