我的应用程序中有一个DialogFragment
,在其中使用动画来显示片段的创建时间。这就是我的方法,
@Override
public Dialog onCreateDialog(Bundle savedInstanceState)
{
// Set a theme on the dialog builder constructor!
AlertDialog.Builder builder =
new AlertDialog.Builder( getActivity(), R.style.MyCustomTheme );
builder
.setTitle( "Your title" )
.setMessage( "Your message" )
.setPositiveButton( "OK" , new DialogInterface.OnClickListener()
{
@Override
public void onClick(DialogInterface dialog, int which) {
dismiss();
}
});
return builder.create();
}
}
和主题
<style name="MyCustomTheme" parent="@android:style/Theme.Panel">
<item name="android:windowAnimationStyle">@style/MyAnimation.Window</item>
</style>
<style name="MyAnimation.Window" parent="@android:style/Animation.Activity">
<item name="android:windowEnterAnimation">@anim/anim_in</item>
<item name="android:windowExitAnimation">@anim/anim_out</item>
</style>
动画效果很好,但是问题是每次恢复活动时都会发生这种情况。因此,如果该片段正在显示,并且我锁定了屏幕,然后将其解锁,那么活动被暂停然后恢复,我看到了此动画。我该如何强制仅在创建片段时才第一次发生这种情况,而不是从此开始显示?预先感谢!
答案 0 :(得分:0)
在活动的onCreate而不是onResume中显示对话框?