android - 禁用(淡入和淡出)对话框动画

标签 android dialog

我是新手程序员,我在禁用对话框动画(淡入和淡出)方面遇到了问题。

我尝试使用空样式来设置它并通过更改来设置它

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

进入

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

对话框背景变黑,正反按钮变为<2.1 - 4.0)android风格,但淡入淡出动画效果保留...

我的风格:

<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>

有什么办法可以消除这个动画吗?

最佳答案

终于成功了!

资源/动画/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"/>

资源/动画/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/values/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);
}

关于android - 禁用(淡入和淡出)对话框动画,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18154438/

相关文章:

Android:我想改变我的 ImageView 的颜色

java - 从一个点到另一个点以相同的角度移动?

c++ - 使用按钮创建 TreeView ?在QT

对话框内的 Android Activity

android - 在 ExoPlayer 中使用缓存

android - 我们可以在不调用 stop() 方法的情况下销毁 Activity 吗?

android - 为什么它在 onClick 方法中使用 R.id.buttonX 而不是将 View 与现有按钮进行比较?

Android 自定义列表对话框

android - 对话框中的 WebView(加载 Assets )且未布局

C GTK通过ESC关闭后无法再次打开Dialog