2017-05-10 10 views
0

경고 대화 상자에 애니메이션을 설정했습니다. 대화 상자의 배경은 검은 색으로 변합니다.검은 색 애니메이션 적용시 경고 대화 상자의 배경

내 코드 ...

AlertDialog.Builder dialogBuilder = new AlertDialog.Builder(MainActivity.this,R.style.DialogSlideAnim); 

slide_out_down.xml

<?xml version="1.0" encoding="utf-8"?> 
<translate xmlns:android="http://schemas.android.com/apk/res/android" 
android:duration="@android:integer/config_longAnimTime" 
android:fromYDelta="0%p" 
android:toYDelta="100%p" /> 

slide_up_dialog.xml

<?xml version="1.0" encoding="utf-8"?> 
<translate xmlns:android="http://schemas.android.com/apk/res/android" 
android:fromYDelta="50%p" android:toYDelta="0%p" 
android:duration="@android:integer/config_longAnimTime"/> 

styles.xml

<style name="DialogAnimation"> 
    <item name="android:windowEnterAnimation">@anim/slide_up_dialog</item> 
    <item name="android:windowExitAnimation">@anim/slide_out_down</item> 
</style> 
<style name="DialogSlideAnim" parent="@android:style/Theme.Dialog"> 
    <item name="android:windowAnimationStyle">@style/DialogAnimation</item> 
</style> 

이 문제를 어떻게 해결할 수 있습니까?

+0

테마가 문제입니다. –

+0

어떻게 해결할 수 있습니까? – Tom

+0

맞춤 알림 대화 상자를 표시 할 수 있습니까? –

답변

0

난 당신이 사용자 정의 특정 대화 레이아웃 여기 대화 작성하고 Alertdialog.eg에 그 레이아웃을로드 할 수 있다고 생각 :

dialog.setContentView (R.layout.yourlayout);

레이아웃 배경색은 사용자에 따라 다릅니다. 여기

Dialog dialog = new Dialog(WordActivity.this, R.style.CustomDialog); 
    dialog.setTitle("Test"); 
    dialog.setContentView(R.layout.test); 
    dialog.getWindow().setBackgroundDrawable(new ColorDrawable(android.graphics.Color.TRANSPARENT)); 
    dialog.show(); 

가 테스트 사용자 정의보기를 의미합니다 .... 및 검은 배경이 안드로이드를 사용하여 것입니다
<style name="CustomDialog" parent="@android:style/Theme.Dialog"> 
    <item name="android:windowAnimationStyle">@style/CustomDialogAnimation</item> 
</style> 

<style name="CustomDialogAnimation"> 
    <item name="android:windowEnterAnimation">@anim/slide_out_down</item> 
    <item name="android:windowExitAnimation">@anim/slide_up_dialog</item> 
    <item name="android:windowFrame">@null</item> 
    <item name="android:windowBackground">@android:color/transparent</item> 
    <item name="android:windowIsFloating">true</item> 
    <item name="android:windowContentOverlay">@null</item> 
    <item name="android:windowTitleStyle">@null</item> 
    <item name="android:windowAnimationStyle">@android:style/Animation.Dialog</item> 
    <item name="android:windowSoftInputMode">stateUnspecified|adjustPan</item> 
    <item name="android:backgroundDimEnabled">false</item> 
    <item name="android:background">@android:color/transparent</item> 
</style> 

및 활동에

,

0

이 일과하십시오 : windowBackground 투명하다.