Mengenal Macam-Macam Widget Flutter - Modul
Mengenal Macam-Macam Widget Flutter - Modul
Pada materi sebelumnya sudah banyak membahas tentang Flutter dan cara install Flutter. Kali ini
akan membahas tentang widget yang ada di Flutter. Widget Flutter dibuat menggunakan
framework modern yang mengambil inspirasi dari React. Ide utama dari Flutter Widgets adalah
bisa membangun UI dari widget.
Widget Flutter
Widget pada Flutter menjelaskan seperti apa tampilan mereka jika diberikan konfigurasi dan status
saat ini. Saat status widget berubah, widget akan membuat ulang deskripsinya, yang berbeda
dengan kerangka kerja dengan deskripsi sebelumnya untuk menentukan perubahan minimal yang
diperlukan dalam pohon render yang mendasari untuk transisi dari satu status ke status berikutnya.
Bagaimana Cara Kerja Flutter, Strategi All Widgets dalam Flutter dan Bahasa Pemrograman
Dart?
Framework Flutter, yang ditulis dalam bahasa pemrograman Dart, memiliki mesin Flutter, pustaka
Foundation, dan widget. Pendekatan developeran di Flutter berbeda dari yang lain dengan
penulisan UI deklaratifnya.
Di sini, ada kebutuhan untuk memulai dari akhir, artinya sebelum memulai developeran beberapa
elemen, pengguna harus memikirkan gambaran lengkap tentang jenis UI apa yang akan dibuat.
Banyak developer yang membedakan penulisan UI ini sebagai yang lebih jelas, tetapi juga
menyebabkan kesulitan tertentu bagi developer pada awalnya.
Ide utama Flutter adalah developer dapat membangun seluruh antarmuka pengguna hanya dengan
menggabungkan widget yang berbeda. Antarmuka aplikasi terdiri dari berbagai widget bersarang,
yang dapat berupa objek apa pun.
Hal ini berlaku untuk apa pun mulai dari tombol hingga padding, dan dengan menggabungkan
widget, developer dapat menyesuaikan aplikasi secara radikal. Widget dapat saling memengaruhi
dan menggunakan fungsi bawaan untuk merespons perubahan eksternal dalam status. Widget
adalah elemen penting dari antarmuka pengguna dan sesuai dengan spesifikasi desain Android,
iOS, dan aplikasi web konvensional.
Dengan Flutter, developer dapat membuat widget khusus, yang dapat dengan mudah digabungkan
dengan widget yang sudah ada. Perhatikan bahwa tidak ada widget OEM, tetapi Galeri Flutter
memberi developer widget siap pakai mereka sendiri — serangkaian contoh aplikasi yang
menunjukkan cara menggunakan widget standar — yang terlihat seperti bahasa desain Android
dan iOS asli (Material dan Cupertino).
Flutter juga memberi developer kemampuan untuk melihat widget dalam gaya reaktif. Sebagai
catatan, Flutter bukan yang pertama melakukan ini, tetapi Flutter adalah satu-satunya SDK seluler
yang menawarkan tampilan reaktif tanpa memerlukan jembatan JavaScript.
Selain itu, Dart dilengkapi dengan repositori paket perangkat lunak untuk meningkatkan
kemampuan aplikasi. Misalnya, ia menawarkan beberapa paket yang membantu untuk mengakses
Firebase sehingga developer dapat membuat aplikasi tanpa server. Paket lain memungkinkan akses
ke gudang data Redux atau memfasilitasi akses ke layanan platform dan peralatan seperti kamera.
Flutter Widgets hadir dengan rangkaian widget dasar yang kuat, yang biasanya digunakan
sebagai berikut:
1. Teks
Widget Teks memungkinkan membuat serangkaian teks bergaya dalam aplikasi yang dibuat.
2. Row, Column
Widget fleksibel ini memungkinkan membuat tata letak yang fleksibel baik dalam arah horizontal
(Baris) dan vertikal (Kolom). Desain objek ini didasarkan pada model tata letak flexbox web.
3. Stack
Alih-alih berorientasi linier (baik horizontal atau vertikal), widget Stack memungkinkan
menempatkan widget di atas satu sama lain dalam urutan cat. kemudian dapat menggunakan
widget Positioned pada anak-anak dari Stack untuk memposisikannya relatif terhadap tepi atas,
kanan, bawah, atau kiri tumpukan. Tumpukan didasarkan pada model tata letak pemosisian absolut
web.
4. Container
Widget Container memungkinkan membuat elemen visual persegi panjang. Container dapat
didekorasi dengan BoxDecoration, seperti latar belakang, batas, atau bayangan.
Container juga dapat memiliki margin, padding, dan batasan yang diterapkan pada ukurannya.
Selain itu, container dapat ditransformasikan dalam ruang tiga dimensi menggunakan matriks.
Di bawah ini adalah beberapa widget sederhana yang menggabungkan widget ini dan widget
adalah contoh penerapan kode-kode widget lainnya
import 'package:flutter/material.dart';
@override
Widget build(BuildContext context) {
return Container(
height: 56.0, // in logical pixels
padding: const EdgeInsets.symmetric(horizontal: 8.0),
decoration: BoxDecoration(color: Colors.blue[500]),
// Baris adalah tata letak horizontal dan linier.
child: Row(
// <Widget> adalah jenis item dalam daftar.
children: <Widget>[
IconButton(
icon: Icon(Icons.menu),
tooltip: 'Menu App',
onPressed: null,
),
IconButton(
icon: Icon(Icons.search),
tooltip: 'Cari',
onPressed: null,
),
],
),
);
}
}// null menonaktifkan tombol
),
// Diperluas memperluas anaknya
// untuk mengisi ruang yang tersedia.
Expanded(
child: title,
void main() {
runApp(MaterialApp(
title: 'Appkey Tutorial', // digunakan oleh pengalih tugas OS
home: SafeArea(
child: MyScaffold(),
),
));
}
Pastikan untuk memiliki entri using-material-design: true di bagian flutter file pubspec.yaml . Ini
memungkinkan untuk menggunakan set ikon Material yang telah ditentukan sebelumnya.
Biasanya merupakan ide yang baik untuk menyertakan baris ini jika menggunakan pustaka
Material.
name: my_app
flutter:
uses-material-design: true
Banyak widget Desain Material harus berada di dalam MaterialApp untuk ditampilkan dengan
benar, untuk mewarisi data tema. Oleh karena itu, jalankan aplikasi dengan MaterialApp.
Widget MyAppBar membuat Container dengan tinggi 56 piksel yang tidak bergantung pada
perangkat dengan bantalan internal 8 piksel, baik di kiri maupun kanan. Di dalam container,
MyAppBar menggunakan tata letak Baris untuk mengatur anak-anaknya.
Anak tengah, widget judul, ditandai sebagai Diperluas, yang berarti diperluas untuk mengisi sisa
ruang yang tersedia yang belum digunakan oleh anak lain. dapat memiliki beberapa anak yang
Diperluas dan menentukan rasio di mana mereka menggunakan ruang yang tersedia menggunakan
argumen fleksibel ke Diperluas.
Widget MyScaffold mengatur anak-anaknya dalam kolom vertikal. Di bagian atas kolom itu
menempatkan instance MyAppBar, melewati bilah aplikasi widget Teks untuk digunakan sebagai
judulnya.
Melewati widget sebagai argumen ke widget lain adalah teknik hebat yang memungkinkan Anda
membuat widget umum yang dapat digunakan kembali dalam berbagai cara. Akhirnya,
MyScaffold menggunakan Expanded untuk mengisi ruang yang tersisa dengan tubuhnya, yang
terdiri dari pesan terpusat.
Flutter menyediakan sejumlah widget yang membantu membangun aplikasi yang mengikuti
Desain Material. Aplikasi Material dimulai dengan widget MaterialApp, yang membuat sejumlah
widget berguna di akar aplikasimu, termasuk Navigator, yang mengelola tumpukan widget yang
diidentifikasi oleh string, juga dikenal sebagai “rute”. Navigator memungkinkan bertransisi
dengan mulus di antara layar aplikasi . Menggunakan widget MaterialApp sepenuhnya opsional
tetapi praktik yang baik.
import 'package:flutter/material.dart';
void main() {
runApp(MaterialApp(
title: 'Belajar Flutter',
home: TutorialBeranda(),
));
}
Perhatikan bahwa widget diteruskan sebagai argumen ke widget lain. Widget Scaffold mengambil
sejumlah widget yang berbeda sebagai argumen bernama, yang masing-masing ditempatkan di tata
letak Scaffold di tempat yang sesuai.
Demikian pula, widget AppBar memungkinkan untuk memasukkan widget untuk widget
terkemuka, dan tindakan widget judul. Pola ini berulang di seluruh kerangka kerja dan merupakan
sesuatu yang mungkin Anda pertimbangkan saat mendesain widget sendiri.
Itulah penjelasan tentang Flutter Widgets. Widgets sangat membantu untuk bekerja dengan Flutter
ketika membangun suatu aplikasi. Kalau ingin tahu lebih banyak tentang Flutter,