PDA

View Full Version : قرار دادن انیمیشن ورود و خروج برای یک dialog



zahra.mf
جمعه 13 شهریور 1394, 15:15 عصر
سلام من یه dialog دارم که میخوام وقتی کاربر روی یک button کلیک کرد این dialog از سمت چپ صفحه وارد بشه و هنگامی که روی دکمه back کلیک کرد از سمت راست به سمت چپ بره

من دوتا فایل anim به اسم in و out نوشتم که کدهای فایل in به این صورته
<?xml version="1.0" encoding="utf-8"?><translate

xmlns:android="http://schemas.android.com/apk/res/android"

android:fromXDelta="-500"
android:toXDelta="0"
android:duration="1000"


>
</translate>





و کدهای فایل out هم به این صورته
<?xml version="1.0" encoding="utf-8"?><translate

xmlns:android="http://schemas.android.com/apk/res/android"

android:fromXDelta="0"
android:toXDelta="500"
android:duration="1000"
>
</translate>




و هر دوتا رو داخل یه style قرار دادم
<style name="dialog_anim"> <item name="android:windowEnterAnimation">@anim/in</item>
<item name="android:windowExitAnimation">@anim/out</item>
</style>
بعد داخل رویداد button به این صورت نوشتم

Button testDi = (Button)findViewById(id.mybutton);

testDi.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {

Dialog di = new Dialog(MainActivity.this);
di.requestWindowFeature(Window.FEATURE_NO_TITLE);
di.setContentView(layout.dialog_setting);

di.getWindow().getAttributes().windowAnimations = R.style.dialog_anim;

di.setCancelable(true);
di.show();
}
});

ولی این انیمیشن از سمت راست میاد و هر چی با پارامترای سرعتش کار میکنم تغییری نمیکنه تا یه کم سرعتش کمتر بشه

Daniel_GH
جمعه 13 شهریور 1394, 22:17 عصر
اینو امتحان کن:

in.xml


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

out.xml

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

Daniel_GH
جمعه 13 شهریور 1394, 22:25 عصر
داخل style.xml هم اینو بنویس


<style name="MyAnimation" parent="@android:style/Animation.Activity">
<item name="android:activityOpenEnterAnimation">@anim/in</item>
<item name="android:activityOpenExitAnimation">@anim/out</item>
</style>

zahra.mf
یک شنبه 15 شهریور 1394, 00:49 صبح
داخل style.xml هم اینو بنویس


<style name="MyAnimation" parent="@android:style/Animation.Activity">
<item name="android:activityOpenEnterAnimation">@anim/in</item>
<item name="android:activityOpenExitAnimation">@anim/out</item>
</style>




وقتی روی button کلیک میکنم دیالوگ ظاهر میشه از سمت چپ نمیاد اصلا