2013-07-28 8 views
19

通常、2つのアクティビティ間でアニメーションをズームイン/ズームアウトするコードがありますが、何か違うものが必要です。最初のボタンをクリックすると、最初のボタンをクリックするだけで5つのボタンが表示され、次にズームインすると中央からズームするのではなく、最初のボタンの位置から開始されます。私を助けてください。androidのズームイン/ズームアウトアニメーション

EDIT:ズームはボタンをクリックして中央からクリックしてください。

+0

あなたの質問は、非常に明確ではありませんあなたは、レイアウトの中央から拡大したいか、それはあなたのアニメーションが正しく動作していないということでしょうか? – kabuto178

+0

私は5つのボタンをクリックすると、それは展開され、次のアクティビティが開始されます。 – jagdish

+0

新しいアクティビティを開始したくないですか? – kabuto178

答えて

2

私はあなたがして、 "アウト" アニメーション

  • "の"

    • セットにあると思うのres /アニメーションフォルダに
    • 入れアニメーションの説明

      オブジェクトをフォルダRES /アニメーションを作成します。 setInAnimation(AnimationUtils.loadAnimation(this、R.anim.zoom_enter)); object.setOutAnimation(AnimationUtils.loadAnimation(this、R.anim.zoom_exit));

    あなたは、Apache 2.0ライセンスの下で

    をGoogleが提供アンドロイドSDKサンプルアニメーションを使用するか、参照することができます。このた使用前の

    http://developer.android.com/training/animation/zoom.html

  • 29

    することができますよりも簡単ですベースのズームをスケーリング新しいアクティビティを開始するコマンドを実行した後でこのメソッドを使用すると、

    startActivity(intent); 
    overridePendingTransition(animation_in_goes_here,animation_out_goes_here); 
    

    上記のアニメーションを置き換えて、animation_in_goes_hereを、新たに開始したアクティビティーに必要なアニメーションリソースに置き換え、animation_out_goes_hereをそのアクティビティのアニメーションリソースに置き換えてください。これにより、スイッチング効果が得られます。

    zoom_in.xml

    <?xml version="1.0" encoding="utf-8"?> 
    <set xmlns:android="http://schemas.android.com/apk/res/android" android:fillAfter="true" > 
        <scale 
        xmlns:android="http://schemas.android.com/apk/res/android" 
        android:duration="1000" 
        android:fromXScale="1" 
        android:fromYScale="1" 
        android:pivotX="50%" 
        android:pivotY="50%" 
        android:toXScale="3" 
        android:toYScale="3" > 
        </scale> 
    </set> 
    

    zoom_out.xml

    <?xml version="1.0" encoding="utf-8"?> 
    <set xmlns:android="http://schemas.android.com/apk/res/android" android:fillAfter="true" > 
        <scale 
        xmlns:android="http://schemas.android.com/apk/res/android" 
        android:duration="1000" 
        android:fromXScale="1.0" 
        android:fromYScale="1.0" 
        android:pivotX="50%" 
        android:pivotY="50%" 
        android:toXScale="0.5" 
        android:toYScale="0.5" > 
        </scale> 
    </set> 
    

    が、これは、あなたの質問に答えるために役立ったと思います。

    +0

    thnaxを展開するようなものですが、アニメーションは適切ではありません:( – jagdish

    +0

    どのように問題があるようですか? – kabuto178

    +0

    このアニメーションは適切ではありません。最初にズームインしてから通常に戻ってしまいます。私が残しているアクティビティで何も起こりません。この回答は今のところ8つの親指を持っているので、文脈で正しいものでなければなりません。 –

    2

    <scale xmlns:android="http://schemas.android.com/apk/res/android" 
        android:duration="1000" 
        android:fromXScale="0" 
        android:fromYScale="0" 
        android:pivotX="50%" 
        android:pivotY="50%" 
        android:toXScale="0.5" 
        android:toYScale="0.5"> 
    
    </scale> 
    
    
    <scale xmlns:android="http://schemas.android.com/apk/res/android" 
    
        android:duration="1000" 
        android:fromXScale="2.1" 
        android:fromYScale="2.1" 
        android:pivotX="50%" 
        android:pivotY="50%" 
        android:startOffset="3000" 
        android:toXScale="0" 
        android:toYScale="0"> 
    
    </scale> 
    

    +0

    create zoom.xmlズームアウトやズームインに使用します – bhoomika

    関連する問題