Salahsatunya adalah Wordpress Popular Posts. Plugin ini pula yang saya gunakan untuk membuat artikel populer pada sidebar blog Gus Adit ini. Cara membuat artikel populer dengan menggunakan plugin Wordpress Popular Posts adalah sebagai berikut: Pada Dashboard blog Anda, klik Plugins » Add New. Di kotak
Windows 11 memang merupakan operasi sistem terbaru yang diluncurkan oleh Microsoft, di versi terbaru ini Microsoft juga memperkenalkan tampilan panel widget baru. Dimana di dalam versi terbarunya kamu bisa mengakses banyak widget seperti widget cuaca, olah raga, foto, dan topik-topik hangat terbaru lainnya. Bagi kamu yang sudah menggunakan windows 11 tapi kamu belum tahu tahu cara menggunakan fitur Widget di windows 11? kamu bisa mengikuti panduannya dari kami dibawah ini. Langkah pertama untuk dapat menggunakan fitur widget, kita harus membuka fitur widget terlebih dahulu. Jadi saya akan memberi informasi kepada kamu bagaimana cara mengakses widget dengan cepat dan mudah. Cara Mudah Mengakses Fitur Widget Di Windows 11 Cara mengakses widget di windows 11 tidaklah terlalu sulit, kamu bisa menggunakan sebuah shortcut tombol keyboard untuk mengaksesnya. Tekan tombol âWin + Wâ pada keyboard secara bersamaan untuk dapat mengakses widgets. Nah, setelah kamu berhasil mengakses widget kamu bisa menggunakan dan mengatur widget sesuai keinginan kamu. Karena tampilan awal widget akan menampilkan info seputar cuaca, skors olahraga, gambar, info terbaru dan juga info seputar informasi menarik lainnya. Dan untuk dapat mengatur widget sesuai keinginan, kamu dapat mengikuti Langkah-langkahnya dibawah ini. 1. Cara Mengatur Widget Di Windows 11 Dalam mengatur widget memiliki banyak sekali caranya dan tergolong tidak begitu sulit. Ada beberapa kategori dalam widget yang dapat kamu gunakan. 1. Untuk memindahkan widget kamu perlu mengarahkan kursor pada bagian atas icon widget kemudian akan muncul icon tangan artinya kamu sudah bisa memindahkan icon widget sesuai keinginan kamu selama masih berada di dalam menu widget. 2. Untuk mengubah ukuran widget kamu harus mengarahkan kursor pada titik tiga yang terdapat di samping atas sudut kanan icon widget. Klik tiga titik tersebut lalu terdapat opsi menu âsmallâ, âlargeâ, dan âmediumâ. Pilih salah satu opsi menu untuk mengubah ukuran widget. 3. Untuk menghapus widget kamu juga perlu klik tiga titik bagian kiri atas widget, lalu pada opsi menu yang ditampilkan pilih menu âremove widgetâ. Artikel Lainnya Cara Mematikan Windows Defender Di Windows 11 4. Untuk dapat mengcustim widget kamu juga akan masuk pada opsi menu widget yang terdapat di tiga titik kanan atas sebelah kiri, Pilih menu âCustumize Widgetâ 2. Cara Menambahkan Widget Di Windows 11 Untuk dapat menambahkan widget caranya cukup mudah yaitu dalam tampilan menu widget terdapat tombol âAdd Widgetsâ klik tombol tersebut. Lalu kamu akan ditampilkan dengan berbagai macam widget lainnya yang bisa kamu tampilkan. 3. Cara Mengatur Feed Widget Sesuai Dengan Minat Kamu Di Windows 11 Untuk dapat menampilkan feed widget sesuai dengan minat kamu terdapat cara yang mudah yaitu pada masuk pada menu âAdd Widgetsâ. Setelah kamu berhasil masuk pada menu pengaturan âadd widgetsâ pilih menu âPersonalize your interestâ lalu klik menu tersebut. Artikel Lainnya 2 Cara Update Driver Laptop Di Windows 11 Setelah itu kamu akan masuk kedalam halaman Start Microsoft, pada halaman ini klik tab âMinat sayaâ lalu cari tema berdasarkan minat kamu. Dan kamu bisa mencentang opsi minat yang kamu pilih sebelumnya. Nah itu dia cara menggunakan fitur widget di windows 11. Setelah kamu sudah membaca artikel ni apakah kamu sudah bisa menggunakan widget dan mengaturnya? Semoga artikel ini dapat membantu kamu dalam menjawab pertanyaan kami tersebut, terimakasih. Cara Menggunakan Fitur Widget Di Windows 11 1. Cara Mengatur Widget Di Windows 112. Cara Menambahkan Widget Di Windows 113. Cara Mengatur Feed Widget Sesuai Dengan Minat Kamu Di Windows 11
DalamBelajar Komputer Melalui Internet saya mau share cara membuat Popular Post bergerak ke atas, contohnya dapat dilihat di blog ini. mungkin bagi para blogger membuat popular post sudah pada tau dan sudah ga asing lagi karena memang sudah disediakan di menu tambah widget, namun itu masih dalam tampilan biasa atau tidak bergerak. Nah, pada kesempatan ini saya akan memberikan trik agar Mencari coding Flutter animation yang lengkap? Yuk langsung simak tutorial belajar flutter animation berikut ini sampai tuntas! Seri belajar flutter animation kali ini akan mengajak Anda menguasai dua point berikut Cara menggunakan kelas-kelas dasar dari pustaka animasi untuk menambahkan efek animasi pada sebuah widget. Momen yang tepat untuk menggunakan AnimatedWidget dan AnimatedBuilder. Anda juga akan belajar bagaimana cara membuat animasi yang âeksplisitâ dengan Flutter. Setelah memahami beberapa konsep, kelas dan metode esensial dari perpustakaan animasi, kami akan menunjukkan 5 contoh pembuatan animation Flutter yang dibangun di atas satu sama lain. Dari sinilah Anda akan melihat berbagai sisi pustaka animasi Flutter secara mendalam. Flutter SDK juga menyediakan animasi eksplisit bawaan, seperti FadeTransition, SizeTransition, dan SlideTransition. Animasi sederhana ini diaktifkan oleh pengaturan pada titik awal dan akhir pemrograman. Mereka lebih mudah diterapkan daripada animasi eksplisit khusus atau custom. Belajar Flutter Animation Konsep dan Kelas EsensialFlutter AnimationCurvedÂAnimat Animasi5 Contoh Flutter AnimationRendering Animasi di FlutterMenyederhanakan Animasi dengan AnimatedWidgetMeninjau Progres Animasi di FlutterPemfaktoran Ulang dengan AnimatedBuilderMembuat Animasi secara Bersamaan Belajar Flutter Animation Konsep dan Kelas Esensial Poin penting untuk diingat Animasi â merupakan kelas inti di perpustakaan animation Flutterâ menginterpolasi nilai yang digunakan untuk memandu jalannya sebuah animasi. Objek Animasi mengetahui status animasi saat ini misalnya, apakah animasi mulai berjalan, berhenti, atau bergerak maju atau mundur, tetapi komponen ini tidak tahu apapun terkait bentuk yang muncul di layar. AnimationController dipakai untuk mengelola Animasi. CurvedAnimation mendefinisikan perkembangan desain dalam bentuk kurva non-linier. Tween menginterpolasi antara rentang data seperti yang digunakan oleh objek yang dianimasikan. Misalnya, Tween mungkin mendefinisikan interpolasi dari merah ke biru, atau dari 0 hingga 255. Gunakan Listeners dan StatusListeners untuk memantau perubahan status animasi. Sistem animasi di Flutter didasarkan pada objek Animasi yang Anda ketik. Terdapat dua cara bagi Widget untuk menggabungkan animasi secara langsung ke fungsi build mereka. Pertama, Widget membaca nilai animasi saat ini dan mendengarkan perubahan statusnya. Atau kedua, mereka memakai sebuah animasi sebagai dasar untuk animasi yang lebih rumit, dan yang mereka teruskan ke Widget lain. Flutter Animation Objek flutter animation tidak tahu apa-apa terkait bentuk yang muncul di layar komputer. Animasi hanya sebatas kelas abstrak yang memahami nilai dan statusnya saat ini selesai atau diberhentikan. Salah satu jenis animasi yang umum digunakan adalah Animation. Objek animasi secara berurutan menghasilkan angka yang diinterpolasi antara dua nilai selama durasi tertentu. Output dari objek Animasi bisa berupa angka linear, kurva, fungsi langkah, atau pemetaan lain sesuai rancangan Anda. Animasi pun dapat bergerak secara terbalik atau tiba-tiba berputar arah di tengah perjalanan, tergantung pada bagaimana cara Anda mengendalikannya. Lebih jauh lagi, sebuah animasi bisa menginterpolasi varian lain selain double, misalnya Animation atau Animation. Setiap objek animasi memiliki status, yang mana nilainya selalu tersedia dalam anggota .value. Selain tidak tahu akan rupa yang muncul di layar, objek animasi turut tidak tahu-menahu tentang rendering atau fungsi build. CurvedÂAnimation CurvedAnimation mendefinisikan progres animasi dalam bentuk kurva non linear. Adapun coding CurvedAnimation adalah animation = CurvedAnimationparent controller, curve Catatan kelas Curves dapat mendefinisikan banyak kurva yang sering digunakan, ataupun kurva custom yang Anda susun sendiri. Contoh coding CurvedAnimation import 'dartmath'; class ShakeCurve extends Curve { override double transformdouble t => sint * pi * 2; } Telusuri dokumentasi Curves untuk mendapatkan daftar lengkap konstanta kurva Flutter dengan pratinjau visual. CuverdAnimation dan AnimationController akan dijelaskan pada bagian selanjutnya merupakan bagian dari Animation, jadi Anda bisa melewati keduanya secara bergantian. Khusus untuk CurvedAnimation, ia dapat menjadi pembungkus objek yang dimodifikasi. Kita tidak membuat subclass AnimationController untuk menerapkan suatu kurva. AnimationController AnimationController adalah objek animation Flutter khusus yang menghasilkan nilai baru setiap kali komputer siap untuk mengolah bingkai baru. Secara default, AnimationController menghasilkan angka dari 0,0 hingga 1,0 secara linier dalam durasi tertentu. Sebagai contoh, coding berikut ini bisa untuk membuat objek animasi Flutter, tetapi tidak untuk menjalankannya controller = AnimationControllerduration const Durationseconds 2, vsync this; AnimationController diturunkan dari Animation, sehingga dapat digunakan di mana pun objek animation diperlukan. Namun, AnimationController memiliki metode tambahan untuk mengontrol animasi. Misalnya, Anda memulai animasi dengan metode .forward. Kemudian, serangkaian angka akan dihasilkan oleh metode ini â biasanya 60 angka per detik â dan mereka âterikatâ ke refresh layar. Setelah semua angka sukses dibuat, setiap objek animasi kini bisa memanggil objek Listener yang terlampir di pustaka. Cek juga bagian RepaintBoundary terkait cara membuat daftar tampilan kustom dari setiap anak animasi. Saat membuat AnimationController, Anda akan meneruskan argumen vsync. Kehadiran vsync mencegah animasi di luar layar menghabiskan sumber daya yang tidak perlu. Anda dapat menggunakan objek stateful sebagai vsync dengan menambahkan SingleTickerProviderStateMixin ke definisi kelas. Catatan Dalam beberapa kasus, sebuah posisi bisa melebihi rentang dari AnimationController. Misalnya, fungsi fling memungkinkan Anda untuk memberikan kecepatan, gaya, dan posisi melalui objek Force. Posisinya bias berupa apa saja dan bisa di luar kisaran 0,0 hingga 1,0. CurvedAnimation juga dapat melebihi rentang 0,0 hingga 1,0, bahkan ketika AnimationController tidak. Output dari CurvedAnimation dapat memiliki jangkauan yang lebih luas daripada input-nya, bergantung dari jenis kurva yang dipilih digunakan. Misalnya, kurva elastis seperti secara signifikan men-overshoots atau undershoots rentang nilai default. Tween Secara default, objek AnimationController berkisar dari 0,0 hingga 1,0. Namun kalau Anda memerlukan rentang yang berbeda, atau menggunakan tipe data lain, maka konfigurasi animasi dengan Tween untuk menginterpolasinya ke rentang atau tipe data custom. Misalnya, coding Tween berikut mengubah dari ke tween = Tweenbegin -200, end 0; Tween adalah stateless object objek tanpa status yang hanya bekerja di awal dan akhir. Satu-satunya tugas Tween adalah menentukan pemetaan dari rentang input ke rentang output. Rentang input umumnya 0,0 hingga 1,0, tetapi itu bukanlah syarat wajib dalam coding Tween. Tween diturunkan dari Animatable, bukan Animation. Animatable, seperti Animation, tidak harus menghasilkan output double. Misalnya, ColorTween merinci progresi percampuran dua warna dalam animasi. colorTween = ColorTweenbegin end Objek Tween tidak menyimpan status apa pun. Sebaliknya, ia menyediakan metode evaluateAnimation animation yang menerapkan fungsi pemetaan ke nilai animasi saat ini. Nilai objek animasi saat ini dapat ditemukan dalam metode .value. Fungsi evaluasi juga melaksanakan sejumlah fungsi pemeliharaan sistem animasi, seperti memastikan bahwa titik awal dan akhir dikembalikan seperti semula saat nilai animasi mencapai 0,0 dan 1,0. Untuk menggunakan objek Tween, panggil animate pada Tween, lalu teruskan ke objek controller. Misalnya, contoh kode berikut menghasilkan nilai integer dari 0 hingga 255 selama 500 ms AnimationController controller = AnimationController duration const Durationmilliseconds 500, vsync this; Animation alpha = IntTweenbegin 0, end 255.animatecontroller; Catatan Metode animate mengembalikan Animation, bukan Animatable. Contoh di bawah ini memperlihatkan pemakaian controller, curve dan Tween AnimationController controller = AnimationController duration const Durationmilliseconds 500, vsync this; final Animation curve = CurvedAnimationparent controller, curve Animation alpha = IntTweenbegin 0, end 255.animatecurve; Notifikasi Animasi Objek Animasi dapat memiliki Listeners dan StatusListeners, yang didefinisikan dengan addListener dan addStatusListener. Listener dipanggil setiap kali nilai animasi berubah. Fungsi umum dari Listener adalah memanggil setState untuk mengulang pembangunan rebuild. StatusListener dipanggil ketika animasi dimulai, berakhir, bergerak maju, atau bergerak mundur, seperti yang didefinisikan oleh AnimationStatus. Contoh di bagian selanjutnya akan memperlihatkan pemakaian metode addListener, dan memantau kemajuan animasi Flutter dengan addStatusListener. 5 Contoh Flutter Animation Setelah memahami konsep dan elemen dasar, berikutnya mari simak 5 contoh coding animasi di Flutter berikut ini Rendering Animasi di Flutter Poin yang akan dibahas Menambahkan animasi sederhana ke Widget memakai addListener dan setState. Menggunakan fungsi addListener untuk memanggil setState di setiap kali Animation menciptakan series angka baru. Mendefinisikan AnimationController dengan parameter bersyarat vsync. Memahami arti dan fungsi bagian â. .â dari sintaksis â. . addListenerâ â bentuk kode ini juga dikenal dengan nama cascade notation Membuat kelas yang rahasia private dengan membubuhkan garis bawah _ di awal nama. Sejauh ini Anda sudah mempelajari cara menghasilkan angka animasi berurutan dari waktu ke waktu, namun, masih belum ada hal yang kita render ke layar. Untuk merender animasi di Flutter, Anda harus menyimpan objek animasi sebagai bagian dari Widget. Kemudian gunakan nilai-nilainya untuk menentukan cara terbaik menggambar gerakan animasi. Berikut adalah coding dari aplikasi untuk menggambar logo Flutter tanpa animasi import 'packageflutter/ void main => runAppconst LogoApp; class LogoApp extends StatefulWidget { const LogoApp{ override State createState => _LogoAppState; } class _LogoAppState extends State { override Widget buildBuildContext context { return Center child Container margin const 10, height 300, width 300, child const FlutterLogo, , ; } } Sumber app animate0 Kemudian, contoh di bawah memperlihatkan modifikasi dari kode di atas untuk menganimasikan logo supaya âbergerak tumbuhâ dari nol menjadi penuh full size. Saat mendefinisikan AnimationController, Anda juga harus meneruskan objek vsync. {animate0 â animate1}/lib/ Viewed -9,16 +9,39 9 9 State createState => _LogoAppState; 10 10 } 11 - class _LogoAppState extends State { 11 + class _LogoAppState extends State with SingleTickerProviderStateMixin { 12 + late Animation animation; 13 + late AnimationController controller; 14 + 15 + override 16 + void initState { 17 + 18 + controller = 19 + AnimationControllerduration const Durationseconds 2, vsync this; 20 + animation = Tweenbegin 0, end 300.animatecontroller 21 + ..addListener { 22 + setState { 23 + // State yang berubah di sini adalah nilai objek animasi. 24 + }; 25 + }; 26 + 27 + } 28 + 12 29 override 13 30 Widget buildBuildContext context { 14 31 return Center 15 32 child Container 16 33 margin const 10, 17 - height , 18 - width , 34 + height 35 + width 19 36 child const FlutterLogo, 20 37 , 21 38 ; 22 39 } 40 + 41 + override 42 + void dispose { 43 + 44 + 45 + } 23 46 } Sumber app animate1 Fungsi addListener memanggil setState, jadi setiap kali animasi menghasilkan angka baru, maka bingkai saat ini ditandai âkotorâ dan memaksa build untuk dipanggil lagi. Di build, ukuran kontainer berubah karena tinggi dan lebarnya sekarang diatur menggunakan alih-alih nilai hardcoded. Eliminasi pengontrol ketika State objek dihapus untuk mencegah terjadinya kebocoran memori. Animasi Flutter Anda kini sudah selesai dibuat! Bonus tips Dart programming Anda mungkin tidak familiar dengan cascade notation dari Dartâtanda dua titik di .. addListener. Arti dari sintaksis ini adalah pemanggilan metode addListener dengan nilai yang dikembalikan dari animate. Contoh pemakaiannya animation = Tweenbegin 0, end 300.animatecontroller ..addListener { // }; Kode ini setara dengan animation = Tweenbegin 0, end 300.animatecontroller; { // }; Menyederhanakan Animasi dengan AnimatedWidget Poin yang akan dibahas Membuat Widget bergerak dengan kelas pembantu AnimatedWidget alih-alih addListener dan setState. Menggunakan AnimatedWidget untuk membuat Widget yang bisa mengulang animasi yang sama. Pakai AnimatedBuilder untuk memisahkan widget dengan transisinya. Contoh AnimatedWidgets dalam Flutter API AnimatedBuilder, AnimatedModalBarrier, DecoratedBoxTransition, FadeTransition, PositionedTransition, RelativePositionedTransition, RotationTransition, ScaleTransition, SizeTransition, SlideTransition. Kelas dasar AnimatedWidget memungkinkan Anda memisahkan kode widget inti dari kode animasinya. AnimatedWidget tidak perlu mempertahankan objek State untuk menyimpan sebuah animasi. Cukup tambahkan kelas AnimatedLogo berikut lib/ AnimatedLogo class AnimatedLogo extends AnimatedWidget { const AnimatedLogo{ required Animation animation} superlistenable animation; override Widget buildBuildContext context { final animation = listenable as Animation; return Center child Container margin const 10, height width child const FlutterLogo, , ; } } AnimatedLogo menggunakan nilai animasi saat ini saat menggambar dirinya sendiri. Sedangkan LogoApp masih mengelola AnimationController dan Tween, sekaligus meneruskan objek Animation ke AnimatedLogo {animate1 â animate2}/lib/ Viewed -1,10 +1,28 1 1 import 'packageflutter/ 2 2 void main => runAppconst LogoApp; 3 + class AnimatedLogo extends AnimatedWidget { 4 + const AnimatedLogo{ required Animation animation} 5 + superlistenable animation; 6 + 7 + override 8 + Widget buildBuildContext context { 9 + final animation = listenable as Animation; 10 + return Center 11 + child Container 12 + margin const 10, 13 + height 14 + width 15 + child const FlutterLogo, 16 + , 17 + ; 18 + } 19 + } 20 + 3 21 class LogoApp extends StatefulWidget { 4 22 const LogoApp{ 5 23 override 6 24 State createState => _LogoAppState; 7 25 } -15,32 +33,18 15 33 override 16 34 void initState { 17 35 18 36 controller = 19 37 AnimationControllerduration const Durationseconds 2, vsync this; 20 - animation = Tweenbegin 0, end 300.animatecontroller 21 - ..addListener { 22 - setState { 23 - // State yang berubah di sini adalah nilai objek animasi. 24 - }; 25 - }; 38 + animation = Tweenbegin 0, end 300.animatecontroller; 26 39 27 40 } 28 41 override 29 - Widget buildBuildContext context 30 - return Center 31 - child Container 32 - margin const 10, 33 - height 34 - width 35 - child const FlutterLogo, 36 - , 37 - ; 38 - } 42 + Widget buildBuildContext context => AnimatedLogoanimation animation; 39 43 override 40 44 void dispose { 41 45 42 46 43 47 } Meninjau Progres Animasi di Flutter Poin yang akan dibahas Gunakan addStatusListener untuk mendapat pemberitahuan pada perubahan status animasi, seperti memulai, menghentikan, atau membalikkan arah. Jalankan animasi dalam loop tak terbatas dengan membalikkan arah saat animasi telah selesai atau kembali ke keadaan awal. Bisa mengetahui kapan animasi mengubah status, seperti menyelesaikan, bergerak maju, atau berbalik posisi akan sangat membantu para animator. Anda dapat memperoleh notifikasi untuk hal-hal ini dengan mengaktifkan addStatusListener. Contoh coding berikut memodifikasi contoh sebelumnya, sehingga kini bisa menangkap adanya perubahan status dan mencetak pembaruan. Baris yang diberi sorotan adalah bagian yang berubah class _LogoAppState extends State with SingleTickerProviderStateMixin { late Animation animation; late AnimationController controller; override void initState { controller = AnimationControllerduration const Durationseconds 2, vsync this; animation = Tweenbegin 0, end 300.animatecontroller ..addStatusListenerstatus => print'$status'; } // ... } Hasil outputnya Lalu, gunakan addStatusListener untuk membalikkan animasi ke bagian awal atau akhir. Cara ini akan menghasilkan efek âbernapasâ {animate2 â animate3}/lib/ Viewed -35,7 +35,15 35 35 void initState { 36 36 37 37 controller = 38 38 AnimationControllerduration const Durationseconds 2, vsync this; 39 - animation = Tweenbegin 0, end 300.animatecontroller 39 + animation = Tweenbegin 0, end 300.animatecontroller 40 + ..addStatusListenerstatus { 41 + if status == { 42 + 43 + } else if status == { 44 + 45 + } 46 + } 47 + ..addStatusListenerstatus => print'$status'; 40 48 41 49 } Pemfaktoran Ulang dengan AnimatedBuilder Poin yang akan dibahas AnimatedBuilder memahami cara merender transisi. AnimatedBuilder tidak tahu cara merender Widget, atau mengolah objek animasi. Pakai AnimatedBuilder untuk mendeskripsikan animasi sebagai bagian dari metode build untuk widget lain. Namun gunakanlah AnimatedWidget untuk menentukan widget dengan animasi yang dapat digunakan berulang resumable. Contoh AnimatedBuilders dalam Flutter API BottomSheet, ExpansionTile, PopupMenu, ProgressIndicator, RefreshIndicator, Scaffold, SnackBar, TabBar, TextField. Salah satu masalah dalam contoh kode pemrograman sebelumnya adalah kita harus ikut mengubah widget yang merender logo ketika mengganti animasi. Maka dari itu, ada baiknya untuk memisahkan sektor-sektor fungsi ke dalam kelas berbeda demi menyederhanakan kinerja Render logo. Definisikan objek animasi. Render tranisis. Pemisahan tersebut bisa diselesaikan dengan kelas AnimatedBuilder. Ia merupakan kelas terpisah dalam susunan pohon render. AnimatedWidget, AnimatedBuilder secara otomatis menangkap notifikasi dari objek animasi dan menandai struktur pohon Widget sebagai âkotorâ. Alhasil Anda tidak perlu memanggil addListener secara manual. Dimulai dari bagian bawah pohon widget, kode untuk merender logo sangat mudah class LogoWidget extends StatelessWidget { const LogoWidget{ // Kosongkan bagian height dan width untuk memuat nilai induk animasi override Widget buildBuildContext context { return Container margin const 10, child const FlutterLogo, ; } } Tiga blok tengah dalam diagram semuanya dibuat dalam metode build di GrowTransition, yang ditunjukkan di bawah ini. Widget GrowTransition sendiri bersifat stateless dan menyimpan serangkaian variabel akhir yang diperlukan untuk menentukan animasi transisi. Fungsi build membuat dan mengembalikan AnimatedBuilder, yang menggunakan metode Anonymous builder dan objek LogoWidget sebagai parameternya. Pekerjaan merender transisi sebenarnya terjadi dalam metode Anonymous builder, yang menciptakan Container dengan ukuran yang sesuai untuk memaksa LogoWidget menyusut agar pas dengan frame. Salah satu poin rumit dalam kode di bawah ini adalah bahwa anak animasi terlihat seperti ditentukan dua kali. Namun yang sesungguhnya terjadi adalah referensi luar dari anak yang diteruskan ke AnimatedBuilder, lalu dioper ke penutupan anonim, yang kemudian menggunakan objek itu sebagai anaknya. Hasil bersihnya nanti akan berupa AnimatedBuilder yang terselip di antara dua widget pada pohon render. Contoh codingnya adalah sebagai berikut class GrowTransition extends StatelessWidget { const GrowTransition {required required final Widget child; final Animation animation; override Widget buildBuildContext context { return Center child AnimatedBuilder animation animation, builder context, child { return SizedBox height width child child, ; }, child child, , ; } } Akhirnya, kode untuk menginisialisasi animasi terlihat sangat mirip dengan contoh animate2. Metode initState membuat AnimationController dan Tween, lalu mengikatnya dengan animate. âKeajaibanâ terjadi dalam metode build, yang mengembalikan objek GrowTransition dengan LogoWidget sebagai anak, dan objek animasi untuk mendorong terjadinya transisi. Inilah tiga elemen yang tercantum dalam poin-poin yang telah dijabarkan sebelumnya. {animate2 â animate4}/lib/ Viewed -1,27 +1,47 1 1 import 'packageflutter/ 2 2 void main => runAppconst LogoApp; 3 - class extends { 4 - const { 5 - 3 + class LogoWidget extends StatelessWidget { 4 + const LogoWidget{ 5 + 6 + // Leave out the height and width so it fills the animating parent 7 + override 8 + Widget buildBuildContext context { 9 + return Container 10 + margin const 10, 11 + child const FlutterLogo, 12 + ; 13 + } 14 + } 15 + 16 + class GrowTransition extends StatelessWidget { 17 + const GrowTransition 18 + {required required 19 + 20 + final Widget child; 21 + final Animation animation; 6 22 override 7 23 Widget buildBuildContext context { 8 - final animation = listenable as Animation; 9 24 return Center 10 - child 11 - , 12 - , 13 - 14 - , 25 + child AnimatedBuilder 26 + animation animation, 27 + builder context, child { 28 + return SizedBox 29 + height 30 + width 31 + child child, 32 + ; 33 + }, 34 + child child, 15 35 , 16 36 ; 17 37 } 18 38 } 19 39 class LogoApp extends StatefulWidget { 20 40 const LogoApp{ 21 41 override 22 42 State createState => _LogoAppState; -34,18 +54,23 34 54 override 35 55 void initState { 36 56 37 57 controller = 38 58 AnimationControllerduration const Durationseconds 2, vsync this; 39 59 animation = Tweenbegin 0, end 300.animatecontroller; 40 60 41 61 } 42 62 override 43 - Widget buildBuildContext context 63 + Widget buildBuildContext context { 64 + return GrowTransition 65 + animation animation, 66 + child const LogoWidget, 67 + ; 68 + } 44 69 override 45 70 void dispose { 46 71 47 72 48 73 } 49 74 } Membuat Animasi secara Bersamaan Poin yang akan dibahas Kelas Curves mendefinisikan array kurva yang biasa digunakan, dan dapat dipakai bersamaan dengan CurvedAnimation. Di bagian ini, Anda akan mengaplikasikan contoh pemantauan progres animasi menggunakan AnimatedWidget untuk menganimasikan efek masuk in dan keluar out secara kontinu. Anggaplah dalam hal ini Anda ingin menganimasikan efek in dan out, dengan perubahan opasitas animasi dari transparan ke buram. Catatan Contoh ini menunjukkan cara menggunakan beberapa Tweens pada pengontrol animasi yang sama, di mana setiap Tweens mengelola efek yang berbeda dalam animasi. Hal ini hanya untuk tujuan ilustrasi saja. Jika Anda ingin melakukan tweening opacity dan ukuran dalam coding, sebaiknya gunakan FadeTransition dan SizeTransition. Contoh controller = AnimationControllerduration const Durationseconds 2, vsync this; sizeAnimation = Tweenbegin 0, end 300.animatecontroller; opacityAnimation = Tweenbegin end 1.animatecontroller; Anda bisa mendapatkan ukuran animasi dengan dan opacity dengan tetapi penyusun AnimatedWidget hanya mengambil satu objek Animation saja. Untuk mengatasi masalah ini, contoh berikut menampilkan cara membuat objek Tween sendiri dan menghitung nilainya secara eksplisit. Ubahlah AnimatedLogo untuk merangkum objek Tween-nya sendiri, dan metode build -nya memanggil pada objek animasi induk untuk menghitung ukuran dan nilai opacity yang diperlukan. class AnimatedLogo extends AnimatedWidget { const AnimatedLogo{ required Animation animation} superlistenable animation; // Buat Tweens static karena mereka tidak berubah. static final _opacityTween = Tweenbegin end 1; static final _sizeTween = Tweenbegin 0, end 300; override Widget buildBuildContext context { final animation = listenable as Animation; return Center child Opacity opacity child Container margin const 10, height width child const FlutterLogo, , , ; } } class LogoApp extends StatefulWidget { const LogoApp{ override State createState => _LogoAppState; } class _LogoAppState extends State with SingleTickerProviderStateMixin { late Animation animation; late AnimationController controller; override void initState { controller = AnimationControllerduration const Durationseconds 2, vsync this; animation = CurvedAnimationparent controller, curve ..addStatusListenerstatus { if status == { } else if status == { } }; } override Widget buildBuildContext context => AnimatedLogoanimation animation; override void dispose { } } Demikianlah seri belajar flutter animation kali ini. Semoga tutorial coding di atas bermanfaat menambah wawasan Anda, ya! Jangan lupa ikuti terus CODEKEY untuk dapat lebih banyak update tutorial pemrograman lainnya. Baca gratis sekarang hanya di Sampai bertemu lagi! Jasa Pembuatan Aplikasi, Website dan Internet Marketing PT APPKEY PT APPKEY adalah perusahaan IT yang khusus membuat aplikasi Android, iOS dan mengembangkan sistem website. Kami juga memiliki pengetahuan dan wawasan dalam menjalankan pemasaran online sehingga diharapkan dapat membantu menyelesaikan permasalahan Anda.Kaliini saya akan berbagi tentang Cara Membuat Widget Recent Posts Bergerak di Blog. Mungkin memang widget recent posts ini telah disediakan Blogspot yang dapat sobat pasang dengan mudah. Namun ada kelebihan dengan widget Recent Posts yang satu ini yang membuat para Blogger lebih memilih widget ini daripada dengan yang telah disediakan Blogspot.
Sejak Elementor , kami dapat membuat animasi di Elementor. Jika Anda pernah ingin tahu cara membuat animasi di Elementor, Anda berada di tempat yang tepat. Pembaruan Elementor itu telah menambahkan 4 efek gerakan berbeda yang dapat Anda gunakan di blog Anda. Kami akan memiliki ikhtisar tentang animasi ini. Mari kita mulai. Cara Menganimasikan Gambar di Elementor Dengan Elementor sekarang dimungkinkan untuk menambahkan animasi pada MemutarGulir HorisontalGulir VertikalSkala Mari kita telusuri secara konkret apa yang terjadi ketika Anda melakukan salah satu dari peristiwa ini. Buat Situs Web Luar Biasa Dengan Elementor pembuat halaman gratis terbaik Mulai sekarang Cara Membuat Animasi Berputar Dari Gambar Pada Elementor Jadi jika Anda ingin membuat animasi berputar untuk gambar Anda, Anda harus menuju ke Advanced Tab , buka bagian Motion Effects, dan aktifkan Scrolling Effects. Kemudian, Anda perlu mengklik opsi Rotate dan memilih ke arah mana gambar harus diputar. Jika Anda ingin membuat animasi yang halus, kami akan menentukan Kecepatan Slider menjadi 1. Tidak perlu mengubah viewport di sini., Terakhir, kita bisa mengatur Ă Y Anchor PointĂ keĂ TopĂ untuk membuat gambar berputar dari titik tersebut. Cara Membuat Animasi Slide Pada Scroll Pada Elementor Untuk membuat animasi slide, kita perlu mengaktifkan "Scrolling Effects" seperti yang kita lakukan di bagian sebelumnya. Sekarang kita akan mengaktifkan "Gulir Horizontal", dan menentukan konfigurasi berikut Arah GeserAtur Ă KecepatanĂ keĂ 10 Berikut adalah demo tentang bagaimana tampilan geser pada pengguliran. Cara Membuat Animasi Gulir Vertikal Pada Elementor Sama seperti di bagian sebelumnya, kita perlu mengaktifkan Scrolling Effects. Perbedaannya sekarang adalah kita akan mengaktifkan Vertical Scroll dan menentukan beberapa konfigurasi Tentukan kecepatan menjadi 4Atur arah ke "Turun" Dan itu saja! Anda dapat membiarkan pengaturan lain sebagai default. Cara Membuat Animasi Zoom Pada Elementor Dengan animasi ini, kita akan merasakan bahwa gambar bergerak ke arah kita. Itu bisa sangat berguna untuk menarik perhatian elemen tertentu dari situs web Anda. Jadi, mari kita aktifkan Scrolling Effects. Kemudian, aktifkanĂ Vertical ScrollĂ dan Atur arah ke Ă BawahAtur Viewport antara 0% dan 40% Kemudian, klik opsi Scale dan atur Speed sama dengan 6. Selain itu, gunakan pengaturan Viewport untuk membuat bagian bawah 20% dan bagian atas 80%. Itu cukup banyak yang perlu Anda ketahui tentang animasi bergulir di Elementor. Cara Mengontrol Transparansi Pada Gulir Pada Elementor Di sini, Anda akan mempelajari cara menggunakan Ă Pengaturan Viewport Ă untuk membuat efek gerakan keren saat pengunjung menavigasi situs Anda. Kami akan menerapkan efek gerakan ke latar belakang dan bagian, serta widget, yang memberikan cukup fleksibilitas terkait efek yang ingin kami buat. Singkatnya, inilah yang harus Anda lakukan Pilih gambarBuka tab LanjutTemukan bagian Motion EffectsNyalakan Scrolling Effects Sekarang, kita akan mengaktifkan Horizontal ScrollĂ untuk memastikan gambar bergerak dari kiri ke kanan saat pengguna menggulir halaman ke bawah. Kita juga bisa mengatur Ă SpeedĂ untuk membuat animasi yang halus atau cepat Sekarang, mari masuk ke opsi ViewPort dan lihat perubahan apa yang dapat kita terapkan padanya. Pertama, penting untuk menentukan apa itu ViewPort viewport pengunjung adalah ukuran layar perangkat pengguna yang terlihat. Opsi Viewport memungkinkan kami memilih kapan harus memulai dan menghentikan efek pengguliran yang Anda pilih berdasarkan viewport pengunjung. Misalnya, jika kita menetapkan bagian bawah area pandang menjadi 0% dan bagian atas menjadi 100%, gambar akan mulai bergerak segera setelah terlihat di bagian bawah area pandang pengunjung. Jadi, gambar akan mencapai posisi 'asli' ketika berada di tengah Viewport pengunjung atau, 50% , dan akan terus bergerak hingga mencapai puncak 100%. Konkretnya inilah yang terjadi selama animasi bergulir dari suatu gambar Gambar akan mulai di sebelah kiri dari posisi semula ketika pertama kali muncul di viewport pengunjung viewport pengunjung di 0% Ini akan mencapai posisi semula di tengah viewport pengunjung viewport pengunjung di 50% Itu akan terus meluncur ke kanan dari posisi semula karena pengunjung terus menggulir sampai mencapai 100% Jadi ini berarti bahwa jika kita mengatur Ă Bawah Ă Viewport Ă menjadi 50% dan Ă Atas Ă menjadi 100% Gambar akan mulai dari posisi gambar berada di tengah viewport pengunjung 50%, gambar akan mulai bergerak ke kanan hingga gambar mencapai bagian atas viewport pengunjung 100%. Cara Membuat Animasi Efek Transparansi Pada Elementor Untuk contoh ini, kami akan mengaktifkan opsi Transparansi dan Atur arah ke Ă Fade InSetel Ă Level Ă ke Ă 10 Ă ini membuat gambar sangat transparan untuk memulai Jika kita mengatur viewport Bawah ke 0% dan Atas ke 100%, gambar akan transparan saat pertama kali muncul di bagian bawah viewport pengunjung 0%. Saat gambar bergerak ke atas, itu akan menjadi lebih terlihat, akhirnya mencapai tampilan aslinya ketika mencapai bagian atas viewport pengunjung 100%. Jika kita ingin membalikkannya, kita bisa mendefinisikan Fade Out. Kemudian, gambar akan tampak normal pada awalnya dan mengurangi transparansi saat pengunjung menggulir ke bawah. Pilihan lainnya adalah Fade Out In. Dengan yang satu ini, gambar akan mulai dengan status fade-out dan kemudian kembali lagi saat pengunjung terus menggulir. Jika kita mengatur viewport Bawah ke 40% dan Atas ke 60% dengan Fade Out In, maka Gambar akan memudar dari 0% menjadi 40%Ini akan tetap memudar antara 40% hingga 60%Setelah mencapai 60%, itu akan mulai memudar lagi antara 60% dan 100% Sekarang mari kita bermain-main dengan pengaturan yang berbeda untuk menemukan efek yang Anda sukai. Cara Menggunakan Titik Jangkar X dan Y Untuk Efek Animasi Berputar dan Menskala Sekarang mari kita pelajari lebih lanjut tentang titik jangkar X dan Y untuk efek Putar dan Skala di Efek Gerak Elementor. Pada akhir ini, Anda akan tahu bagaimana menerapkan pengaturan ini untuk membuat beberapa efek gerakan keren di situs Anda. Singkatnya, inilah langkah yang akan kita lalui Buka tab LanjutanTemukan pengaturan Motion EffectsNyalakan Scrolling Effects Bagaimana Anchor Points Bekerja di Rotate Animation Mari kita pertimbangkan Efek Rotasi. Klik ikon pensil dengan efek Rotate untuk menyalakannya. Anda dapat membiarkan pengaturan sebagai default. Kemudian, cari pengaturan X Anchor Point dan Y Anchor Point yang muncul di bawah ini. Titik jangkar X dan Y menentukan sumbu di mana gambar berputar. Secara default, keduanya diatur ke Center, yang berarti gambar akan berputar seolah-olah ada 'pin' di tengah gambar. Namun, mengubah titik jangkar X dan/atau Y akan menyebabkan efek rotasi yang berbeda. Misalnya, jika Anda mengatur Ă X Anchor Point Ă ke kiri dan Ă Y Anchor Point Ă ke atas, gambar akan berputar di sekitar sudut kiri atas Atau, jika Anda menyetel X Anchor Point ke tengah, dan Y Anchor Point ke atas, gambar akan berputar seolah-olah lukisan yang Anda gantung di atas. Apakah Anda mendapatkannya sejauh ini? Mari kita lihat satu lagi. Jika Anda memindahkan X Anchor Point ke kanan, sekarang gambar akan mulai berputar seolah-olah disematkan di sudut kanan atas. Mari kita simpulkan ini. TheĂ X Anchor PointĂ menentukan posisi pada sumbu x di mana gambar berputar Dan Titik Jangkar Y melakukan hal yang sama untuk orientasi vertikal Cara Menggunakan Titik Jangkar Dalam Efek Animasi Skala Dengan asumsi Anda memahami dasar-dasar animasi dengan Elementor , mari kita lihat bagaimana ide yang sama ini bekerja dengan efek Skala. Untuk memulai, nonaktifkan efek Rotate, aktifkan efek Scale, dan Atur ArahĂ ke Skala NaikAtur Ă KecepatanĂ keĂ -5 Secara default, X Anchor Point dan Y Anchor Point selalu disetel ke tengah, yang berarti gambar diperkecil ke arah tengah widget gambar. Di sisi lain, jika Anda mengatur titik jangkar keĂ AtasĂ dan Kiri, gambar akan turun ke sudut kiri atas. Ini adalah ide yang sama persis dengan efek rotasi. Sekarang setelah Anda mengetahui cara kerja titik jangkar X dan Y, Anda dapat melanjutkan dan berlatih untuk menguasai animasi ini dengan baik. Cara Menganimasikan Teks Dengan Efek Tumpang Tindih Pada Elementor Di sini, Anda akan belajar bagaimana menggunakan fitur Horizontal Scroll di Elementor's Motion Effects untuk membuat efek teks animasi yang rapi di situs Anda. Anda akan dapat memindahkan teks melintasi halaman saat pengunjung menggulir. Dan dengan beberapa penyesuaian, Anda bahkan dapat membuat teks berubah warna saat bergerak. Untuk contoh ini, kita akan membahas langkah-langkah berikut Judul abu-abu sederhana yang bergerak ke kanan dan tetap dengan warna yang samaJudul putih dan merah muda yang bergerak ke kiri dan berubah dari putih menjadi merah muda setelah melintasi latar belakang merah muda Membuat Header Pertama Mari kita mulai dengan heading abu-abu solid. Kami akan memilih judul, lalu Buka tab LanjutanTemukan bagian Motion EffectsNyalakan Scrolling Effects Kemudian, klik pensil di sebelah efek Horizontal Scroll untuk masuk ke pengaturannya Ubah Arah ke arah yang Anda inginkan untuk menggulir teks Anda "Ke Kanan" untuk contoh kitaBiarkan pengaturanĂ KecepatanĂ danĂ ViewportĂ sebagai default Sekarang judul akan meluncur ke kanan saat pengunjung menggulir halaman ke bawah. Membuat Header Kedua Sekarang, mari kita sedikit lebih maju dan mengubah warna heading saat bergerak. Proses ini melibatkan Membuat duplikat bagian dalamMenggunakan opsiĂ Overflow HiddenĂ untuk menyembunyikan heading dari salah satu bagian setelah melewati bagian dalam Untuk memulai, tambahkan widget Bagian Dalam baru ke bagian tempat Anda ingin meletakkan header, lalu hapus kolom kiri. Kemudian, atur Ă Tinggi Min Ă sama dengan 450 px Sekarang mari kita pergi ke tab Style dan mengatur warna latar belakang menjadi merah muda. Terakhir, buka tab Advanced dan atur padding kiri menjadi 33%. Sekarang, tambahkan widget Ă HeadingĂ dan berikan gaya. Anda harus memiliki heading di dalam bagian dalam seperti ini Sekarang, mari kita edit widget Heading dan aktifkan Scrolling Effects di tab Advanced . Kemudian, mari aktifkan pengaturan Horizontal Scroll dan biarkan opsi sebagai default. Sekarang, header Anda akan bergerak ke kiri, tetapi belum berubah warna. Anda dapat melihat bahwa itu masih putih bahkan di latar belakang putih. Untuk memperbaikinya, kami akan menduplikasi bagian dalam. Sekarang, kita akan memiliki dua bagian dalam dan heading yang identik. Anda dapat menggunakan Navigator untuk mengganti nama bagian untuk membantu Anda mengingat yang mana Sekarang, mari pindah ke bagian dalam bawah yang duplikat dan ubah warna latar belakangnya menjadi putih. Anda juga ingin mengubah warna judul menjadi warna yang sama dengan latar belakang di bagian dalam asli Anda. Kemudian, tambahkan margin atas negatif -450 px ke bagian dalam bawah. Sekarang, bagian dalam bawah duplikat akan muncul ĂąâŹĆdi atasù⏠dari bagian dalam asli. Untuk memperbaikinya, kita perlu mengatur Z-Index untuk bagian duplikat ke 1 dan mengatur Z-Index untuk bagian asli ke 2. Kita juga harus memastikan bahwa hanya header merah muda yang muncul saat bergerak di luar bagian dalam. lebar. Berikut adalah bagaimana seharusnya terlihat seperti Untuk mencapai efek ini, buka pengaturan untuk bagian dalam asli . Di tab Layout , temukan opsi Overflow dan atur ke Hidden . Itu saja! Sekarang, hanya heading dari bagian Ă duplikat Ă yang akan muncul setelah bergulir melewati bagian dalam, yang menciptakan efek teks perubahan warna yang rapi. Cukup mengesankan bukan? Meringkas Kami berharap tutorial ini akan memberikan petunjuk serius tentang cara membuat animasi dengan Elementor . Ingatlah bahwa Anda harus banyak berlatih untuk menguasai animasi ini. Jangan ragu untuk membagikan panduan ini kepada teman