Animatsiya element


Download 97.5 Kb.
Sana24.12.2022
Hajmi97.5 Kb.
#1063555
Bog'liq
uAFWgDAH82s6CfkIUG7tNqv1-Q7UB8Hj


Hujayra animatsiyasi yoki ramka animatsiyasi - bu qisqa vaqt ichida bir qator tasvirlar yoki ramkalar ketma-ket bir-birini almashtiradigan animatsiya texnikasi. Multfilmlar yaratishda bu usul juda keng tarqalgan. Masalan, bizda quyidagi rasmlar to'plami mavjud:







Kadrni yetarlicha tez o'zgartirish bilan siz quyonning basketbol savatiga to'p tashlashining dinamik effektiga ega bo'lasiz. Endi Android ilovasida shunga o'xshash animatsiyani qanday qilishni ko'rib chiqamiz. Birinchidan, biz ushbu rasmlarning barchasini loyihaga res/drawable papkasida qo'shishimiz kerak . Va xuddi shu papkaga yangi xml faylini qo'shing. Keling, uni rabit_animation.xml deb nomlaymiz va unga quyidagi tarkibni joylashtiramiz:



android:oneshot="false" >







Animatsiya element -elementlari sifatida kalit kadrlar to'plamini o'z ichiga olgan animatsiya ro'yxati ildiz elementi yordamida aniqlanadi . Ildiz elementning ta'rifidagi xususiyat android:oneshot="false"animatsiya tsiklda davom etishini bildiradi. Va qiymat bilan true animatsiya faqat bir marta ishladi. Har bir animatsiya elementi xususiyatidan foydalangan holda tasvir resursiga havola o‘rnatadi, android:drawableshuningdek , android:duration xususiyati yordamida tasvir ko‘rsatiladigan vaqtni millisekundlarda belgilaydi .
Interfeys belgisi animatsiyani ko'rsatish uchun ImageView elementidan foydalanadi:



xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent" >

android:layout_width="0dp"
android:layout_height="0dp"
android:adjustViewBounds="true"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent"/>




Keyinchalik , animatsiyani boshlash uchun MainActivity kodini o'zgartiramiz:


protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

ImageView img = findViewById(R.id.animationView);
// устанавливаем ресурс анимации
img.setBackgroundResource(R.drawable.rabit_animation);
// получаем объект анимации
AnimationDrawable frameAnimation = (AnimationDrawable) img.getBackground();
// по нажатию на ImageView
img.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
// запускаем анимацию
frameAnimation.start();
}
});
}
}

Download 97.5 Kb.

Do'stlaringiz bilan baham:




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling