بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]
پرسش و پاسخ

مرجع تمام انیمیشن ها (Animation)

مدیریت گفتگو
Criss 11 سال پیش
آخرین تغییر: 10 سال پیش

سلام دوستان

خیلی مواقع وقت زیادی رو برای پیدا کردن امینیشن دلخواهم صرف میکنم

اگر ممکنه اینجارو با استفاده از انیمیشن هایی که آشنا هستید پر کنید که دسترسی به اونها راحت تر بشه <

(سعی کنید همراه با Gif توضیح بدید)

بیشتر انیمیشن های همراه با فایل xml رو توضیح بدید ، اگر انیمیشن جالب در کد نویسی سراغ دارید هم معرفی کنید

در ادامه چنتایی رو معرفی میکنم <

نظرات

کاشی زاده 11 سال پیش
میتونید اپلیکیشن اکسیر سبز که به تازگی روانه بازار شده رو بگیرید و دیکامپایل کنید ، نزدیک به 200 تا انیمیشن مختلف رو پیاده کردن .
مهدی 11 سال پیش
بهتربن نرم افزار دیکامپایلر به نظرتون کدومه ؟
کاشی زاده 11 سال پیش
همینی که استاد توی آموزش ها توضیح دادن و آماده کردن .
Reza.M 11 سال پیش
محمدحسین عزیز ، این نرم افزاری که استاد توی آموزش ها توضیح دادن کدومه؟ تو کدوم بخش از آموزشهاس؟
کاشی زاده 11 سال پیش
بخش هجدهم ابزار نویسی قسمت مربوط به دیکامپایل برنامه رو مطالعه بفرمایید .
raeesi 10 سال پیش
چندین مدل انیمیشن زیباhttp://www.androidhive.info/2013/06/android-working-with-xml-animations/
Lion 10 سال پیش
برای اسکرول لیست ویو چگونه از انیمیشن استفاده کنم؟
Criss 10 سال پیش
@Lion : توی این لینک سورس یک آداپتر قرار داده که در متد GetView مقداری از کد کامنت شده اون کدها برای اجرا انیمیشن هست که شما نیاز دارید < : لینک

پاسخ‌ها 4

Criss 11 سال پیش

پینشهاد میکنم برای شروع از این استفاده کنیم <

Docs خیلی خوبی داره <

لینک

 

کافیه کتابخانه رو به پروژه خودتون اضاف گنید <

بعد از اون از کد های موجود در Demo میتونید کمک بگیرید (این مورد فوقالعاده هست)< برای مثال :

new PuffOutAnimation(VIEW).animate();

فقط من نتونستم روی ContentVIew این انیمیشن رو ست کنم < از دوستان اگر کسی وقت داره < برسی کنه که چطور این ممکن هست < برای زمانی که اکتیویتی خارج و یا وارد میشه <<

 View view = G.inflater.inflate(R.layout.main, null);
new PuffOutAnimation(view).animate();
new PuffInAnimation(view).animate();

 

نظرات

Criss 11 سال پیش

 خب  من تاپیک رو ادامه میدم < چند نکته بدست اومده <

این انیمیشن فکر کنم فقط روی View ها اجرا میشه <
 و شاید به این دلیل باشه که من فعلا نتونستم اون رو برای زمانی که اکتیوتی منتقل میشه اجرا کنم <

برای حل این مشکل یک کار به ذهنم رسید < اون هم اینکه تمام لایه Root رو بهش ایدی بدیم < و انیمیشن رو روی اون انجام بدیم < و بعد از اون اکتیویتی رو انتقال بدیم <

که بخوبی انجام میشه <

اما من میخوام که این کار وقتی روی ایتم های لیست ویو کلیک میشه اجرا بشه < برای همین کد زیر رو استفاده کنم <

ولی متاسفانه همش کرش میکنم !

View view = G.inflater.inflate(R.layout.main, null).findViewById(R.id.Main_ROOT);
new PuffInAnimation(view).animate();

 خب مشکل رو موقتا به این شکل حل کردم < لطفا از دوستان یک راه بهتر رو پیشنهاد بده <

برای اینکه انیمیشن ها روی اکتیویتی ها ست کنیم این کارهارو کردم (که اصولی نیست! ولی کار ساز هست)

روی لایه Roor برای اکتیوتی که قراره ازش خارج بشیم ایدی ست کردم < و متد زیر رو قرار دادیم <

     public static void animaation() {
new PuffOutAnimation(G.currentActivity.findViewById(R.id.Main_ROOT)).setDuration(1000).animate();
}

حالا برای کلیک شدن روی آیتم های لیست ویو کد های زیر رو قرار دادیم

         layoutRoot.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View arg0) {
Log.i("adapter", "" + position);
final Intent intent = new Intent(G.currentActivity, ActivityEdit.class);
intent.putExtra("POSITION", position);
JamActivity.animaation();
Handler handler = new Handler();
handler.postDelayed(new Runnable() {

@Override
public void run() {
G.currentActivity.startActivity(intent);
}
}, 1250);
}
});

حالا در قسمت Resume اکتیویتی که قراره بهش بریم < که باید برای این اکتیوی هم روی لایه Root یک آیدی تعریف بشه

         LinearLayout editRoot = (LinearLayout) findViewById(R.id.edit_ROOT);
new PuffInAnimation(editRoot).setDuration(1000).animate();

نظرات

Criss 10 سال پیش

یک انیمیشن چرخش بسیار جالب <

 

  RotateAnimation rotate = new RotateAnimation(0, 360, Animation.RELATIVE_TO_SELF, 0.5f, Animation.RELATIVE_TO_SELF, 0.5f);

rotate.setDuration(3000);
rotate.setRepeatCount(Animation.INFINITE);
txtPrgBar.setAnimation(rotate);

 

نظرات

Criss 10 سال پیش

SlideAnimation

XML

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

<translate
android:duration="1500"
android:toXDelta="0"
android:toYDelta="100%" />

</set>

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

<translate
android:duration="1500"
android:fromXDelta="0"
android:fromYDelta="-100%" />

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

<translate
android:duration="1500"
android:toXDelta="0"
android:detachWallpaper="true"
android:toYDelta="-100%" />
</set>

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

<translate
android:duration="1500"
android:fromXDelta="0"
android:detachWallpaper="true"
android:fromYDelta="100%" />

</set>

مشکل اجرای این انیمیشن در کد های XML این هست که اگر VIew در لایه Root نباشه س در تمام صفحه انیمیشن نمیشه ، در نتیجه فقط در لایه پدر انیمیشن میشه ، سعی کردم روشی رو پیدا کنم گه انیمیشن به پدر وابسته نباشه ، اما پیدا نکردم بنابر این مجبور شدم انیمیشن رو با جاوا برابر با ارتفاع صفحه انجام بدم که نتیجه کار جالب باشه

JAVA

 int screenHeight = G.context.getResources().getDisplayMetrics().heightPixels;

TranslateAnimation slideToUp = new TranslateAnimation(0, 0, 0, -screenHeight);
final TranslateAnimation slideUpFromDown = new TranslateAnimation(0, 0, screenHeight, 0);
TranslateAnimation slideToDown = new TranslateAnimation(0, 0, 0, screenHeight);
final TranslateAnimation slideDownFromUp = new TranslateAnimation(0, 0, -screenHeight, 0);
slideToUp.setDuration(1500);
slideUpFromDown.setDuration(1500);
slideToDown.setDuration(1500);
slideDownFromUp.setDuration(1500);

 

نظرات


پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .