アニメーションを使用してビューの表示を非表示から表示にアニメーション化する 質問する

アニメーションを使用してビューの表示を非表示から表示にアニメーション化する 質問する

デフォルトのビューがありますinvisible(初めての場合のみ)。

VISIBLEここで、次のように可視性を切り替える必要がありますanimation:

if (myView.getVisibility() == View.INVISIBLE) {
    myView.setVisibility(View.VISIBLE);
    myView.animate().translationY(0);
 }

(SnackBar のデフォルトのアニメーションと同様)

しかし、これは機能しません。デフォルトのアニメーションで表示されます

これを実現できる簡単な方法はありますか?

注記

次のように、ビューを閉じるアニメーションを作成しています。

myView.animate().translationY(myView.getHeight());

ベストアンサー1

アニメーションを使用してこれを実行できますXML

および を使用してslide-upアニメーションを作成し、これをリソースフォルダーに配置します。XMLsetalphaXMLanim

スライドアップ.xml

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android" >

    <translate
        android:duration="500"
        android:fromYDelta="100%"
        android:toYDelta="0" />
</set>

使用:

メソッドを使用しAnimationUtils.loadAnimation()てアニメーションを読み込みXML、アニメーションを設定および開始するために使用します。.startAnimation()

次に例を示します。

ImageView imageView = (ImageView) findViewById(R.id.imageView);

// slide-up animation
Animation slideUp = AnimationUtils.loadAnimation(this, R.anim.slide_up);

if (imageView.getVisibility() == View.INVISIBLE) {
    imageView.setVisibility(View.VISIBLE);
    imageView.startAnimation(slideUp);
}

これが役に立つことを願っています〜

おすすめ記事