4

AlertDialogクラスを使用してダイアログを作成しました。カスタムビューで。私はそれのエントリと終了アニメーションを設定したい。そのダイアログをやろうとすると、小さな黒い背景のビューに変換されます。適切なビューでアニメーションを取得するには?
Right view wrong view after theme set
ダイアログテーマのアニメーションの問題

final AlertDialog.Builder builder = new AlertDialog.Builder(
      /*getContext()*/ 
      new android.support.v7.view.ContextThemeWrapper(getContext(), R.style.StyleDialog)); 

    View view = getActivity().getLayoutInflater().inflate(R.layout.dialog_email, null); 
    builder.setView(view); 
    builder.setCancelable(false); 
    alert = builder.create(); 
    alert.show(); 

これらは

<style name="StyleDialog" parent="@android:style/Theme.Dialog"> 
     <item name="android:windowAnimationStyle">@style/DialogAnimation</item> 
    </style> 

    <style name="DialogAnimation"> 
     <item name="android:windowEnterAnimation">@anim/fadein</item> 
     <item name="android:windowExitAnimation">@anim/fadeout</item> 
    </style> 

スタイルですandroid.support.v7.view.ContextThemeWrapperandroid.view.ContextThemeWrapperが、違いはありません両方を試してみました。

android.app.AlertDialogクラスを使用します。

答えて

3

解決策が見つかりました。私が与えなかったレイアウトのためのちょうど背景(私の場合は白)を設定してください。なぜなら、独自のスタイルを設定すると、デフォルトで黒の背景が使用され、スタイルを設定しないと、デフォルトで白の背景が使用されるからです。

android:background="@color/bg_white" 

適切な幅の場合、最初の表示幅をmatch_parentに設定します。

android:layout_width="match_parent"