2013-07-11 4 views
0

У меня есть опыт, и я просто хочу, чтобы повторить мой фон От:Как я могу повернуть (перемещать) фон cocos2d-android?

  1. вверх в направлении вниз

  2. Нисходящая в восходящем направлении

  3. справа налево

  4. Слева направо Направление

Что мне делать?

+0

Почему вы не используете CCParallaxNode для этого? –

+0

от этого, могу ли я повернуть мой фон Непрерывно? –

ответ

0

использовать событие касания, просто применить setTranslationX и setTranslationY. он будет вращаться фоновым изображением .. записи объекта слушателя код изображения, как метод событий setontouchlistener сенсорного

float previousX = 0,previousY = 0; 

switch (ev.getAction()) { 
     case MotionEvent.ACTION_DOWN: 
      previousX = ev.getX(); 
      previousY = ev.getY(); 
      break; 
    case MotionEvent.ACTION_MOVE: 

    final float deltaX = ev.getX() - previousX; 
      final float deltaY = ev.getY() - previousY; 
      objectName.setTranslationX(this.getTranslationX() + deltaX); 
      objectName.setTranslationY(this.getTranslationY() + deltaY); 

      previousX = ev.getX(); 
      previousY = ev.getY(); 
      break; 
} 
+0

спасибо за ответ, но я хочу повернуть фон без прослушивания касания. Это как непрерывное вращение backgroud –

+0

создать папку с анимацией в папке res в android. и написать код анимации вращения в этом файле anim-> anim.xml. и назовите его через основное действие. прежде чем дать этот образ xml-код как android: вращение = 360 градусов. – harikrishnan

+0

Я использую эту штуку для cocos2d-android, я не могу сделать эту вещь еще –

0

без сенсорных listener..its для простой циклического сдвига анимации в Android ...

После того, как вы создали новый проект Android, создайте папку с именем anim в res и файл с именем rotator.xml внутри res/anim.

<?xml version="1.0" encoding="utf-8"?> 
<rotate xmlns:android="http://schemas.android.com/apk/res/android" 
    android:fromDegrees="0" 
    android:toDegrees="360" 
    android:toYScale="0.0" 
    android:pivotX="50%" 
    android:pivotY="50%" 
    android:duration="4000" 
/> 

Надеюсь, что код довольно сам пояснительный. Здесь одно полное вращение будет завершено через 4000 мс (4 секунды). Теперь добавьте PNG-изображение, которое вы хотите повернуть в свою папку. Затем откройте res/main.xml, удалив текстовый текст по умолчанию в макете, добавьте ImageView и Button в макет. Установите Src свойство ImageView как ваше имя файла добавленного изображения, например

android:src="@drawable/myimg" 

Ok, позволяет редактировать основной класс. В кнопке onClick() для кнопки добавьте необходимый код для запуска анимации. Проверьте следующий код.

public class AnimationActivity extends Activity { 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 
     ((Button)findViewById(R.id.button1)).setOnClickListener(new OnClickListener() { 
      @Override 
      public void onClick(View arg0) { 
       final ImageView myImage = (ImageView)findViewById(R.id.imageView1); 
       final Animation 
      myRotation = AnimationUtils.loadAnimation(getApplicationContext(), 
    R.anim.rotator); 
       myImage.startAnimation(myRotation); 
      } 
     }); 
    } 
    }