我如何旋转(移动)背景cocos2d-android?

时间:2013-07-11 13:06:13

标签: android cocos2d-iphone cocos2d-x cocos2d-android

我有一个背景,我只想重复我的背景来自:

  1. 向上向下方向

  2. 向下向上方向

  3. 从右到左的方向

  4. 左右方向

  5. 我该怎么做?

2 个答案:

答案 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;
}

答案 1 :(得分:0)

没有触摸监听器......在Android中简单的旋转动画......

创建新的Android项目后,在res中创建一个名为anim的文件夹,在res / anim中创建一个名为rotator.xml的文件。

 <?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,在布局中删除默认的textView后,将ImageView和Button添加到布局中。将ImageView的src属性设置为添加图像的文件名,例如

android:src="@drawable/myimg"

好的,让我们编辑主类。在按钮的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);
            }
        });
    }
   }