1

ボタンを押すと回転するオブジェクトを作成しています。360 度回転してから、乱数を求めて回転し続け、毎回別の場所に着地するようにします。これは、私の xml ファイル (anime と呼ばれる) にあるもので、360 度を完全に回転させます。

    <rotate 
    android:fromDegrees = "0"
    android:toDegrees = "360"
    android:pivotX = "50%"
    android:pivotY = "50%"
    android:startOffset = "0"
    android:duration = "1000" />

ランダムな値を生成する背後にあるロジックについて助けが必要です。

また、これは私のJavaでどのように表示されるかです

 but_spin = (Button)  findViewById(R.id.spin_but);
 final Context mcontext = this;
 but_spin.setOnClickListener(new View.OnClickListener() {
 public void onClick(View arg0) {
      ImageView animated = (ImageView) findViewById(R.id.big_button);
      anime = AnimationUtils.loadAnimation(mcontext, R.anim.anime);
      animated.startAnimation(anime);  
      }}
    );
4

3 に答える 3

6

XML ではできません。アニメーションを手動でコーディングし、

static final Random R = new Random(System.currentTimeMillis());
...
Animation a = new RotateAnimation(0, 360 + R.nextInt(180));
ImageView animated = (ImageView) findViewById(R.id.big_button);
animated.startAnimation(a);

詳細については、RotateAnimationAPI ドキュメントを参照してください。

于 2012-11-08T02:20:40.437 に答える
1

XML ファイルで乱数を生成することはできません。

コードから RotateAnimation を作成します。

于 2012-11-08T02:15:34.053 に答える
0

XML レイアウト ファイルには、アプリの実行中に変更されない静的データが含まれています。Java コードを使用して乱数を生成し、その値に基づいてドローアブルを回転させる必要があります。

于 2012-11-08T02:18:59.597 に答える