2017-10-11 28 views
0

BottomSheetDialogFragmentに2つのボタンがあり、いずれかのボタンをクリックすると、dismiss()メソッドが呼び出されます。 BottomSheetDialogFragmentをアニメーション化する方法はありますか?私はそれが1000msの持続時間とゆっくりと滑り落ちるアニメーションを表示したい。BottomSheetDialogFragmentにアニメーションを追加する方法

BottomSheetDialogFragmentで拡張され、あなたのフラグメントで

signin.findViewById(R.id.signin_button_using).setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      callback.onClickSignInEmail(); 
      dismiss(); 
     } 
    }) 
+0

Pls。これを参照してくださいhttps://stackoverflow.com/questions/19765938/show-and-hide-a-view-with-a-slide-up-down-animation –

+0

@pritesh onClickSignInEmail()は新しい断片に私たちを連れて行きます。あなたが正しく理解していれば** BottomSheetDialogFragment **はボトムシートダイアグラムを終了するためにdismiss()を使用し、助けにならない記事を – Vijay

答えて

0

は、この

<style name="DialogAnimation"> 
    <item name="android:windowEnterAnimation">@anim/slide_up</item> 
    <item name="android:windowExitAnimation">@anim/slide_down</item> 
</style> 
のようなスタイルで定義することができ、この

@Override 
public void onActivityCreated(Bundle arg0) { 
    super.onActivityCreated(arg0); 
    getDialog().getWindow() 
    .getAttributes().windowAnimations = R.style.DialogAnimation; 
} 

DialogAnimationのように、このメソッドをオーバーライドしてみてくださいサンプルコード

さらに、slide_upとslide_downはあなたの実装になります必要なアニメーションのn。あなたは同じオンラインの例をたくさん見つけることができます。

+0

私はslide_upとdownアニメーションを追加しました。しかし、持続時間が働いていないようです。 <?xmlのバージョン= "1.0" エンコード= "UTF-8">私も1500ms ** slide_down.xml ** 'の期間を追加しました は<のxmlnsを翻訳:アンドロイド="にhttp: 500 " アンドロイド:fromYDelta = "100%P" アンドロイド:toYDelta = "サンプルスライド0%P"/>' – Vijay

+0

リンク:「持続時間= アンドロイド" を//schemas.android.com/apk/res/androidアニメーション[リンク](https://stackoverflow.com/questions/19765938/show-and-hide-a-view-with-a-slide-up-down-animation?noredirect=1&lq=1) – Vijay

関連する問題