2013-08-09 13 views
6

Ich bin Anfänger Programmist und ich habe Probleme mit der Deaktivierung Dialogfeld Animation (Ein- und Ausblenden).Deaktivieren (Einblenden und Ausblenden) Dialogfeld Animation

habe ich versucht, es zu leeren Stil mit und setzen Sie ihn durch

Wechsel
final AlertDialog.Builder builder = new AlertDialog.Builder(getActivity()); 

in

final AlertDialog.Builder builder = new AlertDialog.Builder(new ContextThemeWrapper(getActivity(), R.style.NoAnimation)); 

Hintergrund des Dialogfeldes wurde schwarz, positive und negatice Taste geändert in < 2,1-4,0) android Stil, aber verblassen und verblassen Animationseffekt blieb ...

Mein Stil:

<style name="DialogNoAnimation"> 
    <item name="android:windowEnterAnimation">@anim/enter</item> 
    <item name="android:windowExitAnimation">@anim/exit</item> 
</style> 

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

Irgendwelche Ideen wie kann ich diese Animation beseitigen?

+0

haben Sie haben versucht, '@ null' für das Eingeben und Beenden der Animation hinzuzufügen? –

+0

oder ' @ null' –

+0

Genau wie bei @ anim/enter und @ anim/exit. Ich meine mit @ null und @ null oder @ null Stramek

Antwort

6

Endlich Erfolg!

res/Anim/enter.xml

<?xml version="1.0" encoding="utf-8"?> 
<translate xmlns:android="http://schemas.android.com/apk/res/android" 
android:duration="@android:integer/config_shortAnimTime"/> 

res/Anim/exit.xml

<?xml version="1.0" encoding="utf-8"?> 
<translate xmlns:android="http://schemas.android.com/apk/res/android" 
    android:duration="@android:integer/config_shortAnimTime"/> 

res/Werte/styles.xml

<style name="DialogNoAnimation"> 
    <item name="android:windowEnterAnimation">@anim/enter</item> 
    <item name="android:windowExitAnimation">@anim/exit</item> 
</style> 

src/[dialog_box_class ] .java

@Override 
public void onStart() 
{ 
    super.onStart(); 
    if (getDialog() == null) 
    return; 
    getDialog().getWindow().setWindowAnimations(R.style.DialogNoAnimation); 
} 
1

hier ist eine einfache Lösung:

einen benutzerdefinierten Stil auf Ihrem styles.xml definieren:

<style name="Dialog"> 
    <item name="android:windowAnimationStyle">@null</item> 
    //... more items 
</style> 

Erstellen Sie einen neuen Builder mit Ihrem eigenen Stil:

AlertDialog.Builder builder = new AlertDialog.Builder(context, R.style.Dialog); 
builder.setTitle("Dialog title"); 
builder.show(); 

genießen

Verwandte Themen