0

私はしばらく探していましたが、Android コードの有効な解決策が見つかりません。まあ、少なくとも私が実装できるもの。

いくつかのアニメーションを含むアクティビティ (StartActivity) があります。次に、onTouchEvent があります。これは、さらにいくつかのアニメーションを促すには問題なく機能しますが、この後、新しいアクティビティを開きたいと思います。

これが私のコードです:

public class StartActivity extends Activity {

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.start);

    RunAnimations(R.anim.translate1, R.anim.translate2);
}

public void RunAnimations(int t1, int t2) {
    Animation a = AnimationUtils.loadAnimation(this, t1);
    a.reset();
    Animation b = AnimationUtils.loadAnimation(this, t2);
    b.reset();
    ImageView drop = (ImageView) findViewById(R.id.drop);
    ImageView iflush = (ImageView) findViewById(R.id.iflush);
    drop.clearAnimation();
    iflush.clearAnimation();
    drop.startAnimation(a);
    iflush.startAnimation(b);
}

@Override
public boolean onTouchEvent(MotionEvent event) {
    if (event.getAction() == MotionEvent.ACTION_DOWN) {
        RunAnimations(R.anim.translate3, R.anim.translate4);
    }
    return true;
}
}

onTouchEvent では、RunAnimations を呼び出した後、新しいアクティビティ (TipActivity) を開始したいと考えています。それだけです。

4

2 に答える 2

1

AndroidManifest次のように、別のアクティビティをファイルに追加します。

<activity
    android:label="YourActivity"
    android:name=".YourActivity" >    
    <intent-filter >
        <action android:name="net.learn2develop.YourActivity" />
        <category android:name="android.intent.category.DEFAULT" />
    </intent-filter>
</activity>

そして、(を呼び出した後RunAnimations())のようなことができます:

startActivity(new Intent("net.learn2develop.YourActivity"));

それが役立つことを願っています。

于 2012-07-28T14:34:27.597 に答える
0

それを使用します:

Intent intent=new Intent(context, TipActivity.class);  
startActivity(intent);    
overridePendingTransition(R.anim.translate3, R.anim.translate4);

^-^

于 2012-07-28T14:37:59.887 に答える