Untitled
unknown
dart
a year ago
12 kB
7
Indexable
SingleChildScrollView(
child: Column(
children: [
Container(
color: AppColors.bgWhite,
width: double.infinity,
child: Column(
children: [
Padding(
padding: const EdgeInsets.only(top: 50, bottom: 40),
child: Image.asset(
AppAssets.guLogo,
width: 240,
),
),
// ini containernya
Container(
width: double.infinity,
height: 30,
decoration: const BoxDecoration(
color: AppColors.mainBlue,
borderRadius: BorderRadius.only(
topLeft: Radius.circular(22),
topRight: Radius.circular(22),
),
),
)
],
),
),
Padding(
padding: const EdgeInsets.only(
top: 10,
left: AppConstants.pagePadding,
right: AppConstants.pagePadding,
),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
const Text(
"Selamat Datang\ndi eLearning GreatEdu",
style: TextStyle(
fontSize: 20,
color: Colors.white,
fontWeight: FontWeight.w400,
),
),
DView.height(14),
const Text(
"Buat akun dan dapatkan semua materi sekolah yang kamu butuhkan",
style: TextStyle(
fontSize: 14,
color: Colors.white,
),
),
DView.height(30),
Form(
key: formKey,
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
const Text(
"Nama Lengkap",
style: TextStyle(
fontSize: 16,
color: Colors.white,
),
),
DView.height(3),
DInput(
controller: etNama,
fillColor: AppColors.bgWhite,
hint: 'Nama lengkap',
radius: BorderRadius.circular(8),
validator: (input) =>
input == '' ? "Wajib diisi" : null,
),
],
),
DView.height(14),
Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
const Text(
"Password",
style: TextStyle(
fontSize: 16,
color: Colors.white,
),
),
DView.height(3),
DInputPassword(
controller: etPassword,
fillColor: AppColors.bgWhite,
hint: 'Password',
radius: BorderRadius.circular(8),
validator: (input) =>
input == '' ? "Wajib diisi" : null,
),
],
),
DView.height(14),
Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
const Text(
"NISN",
style: TextStyle(
fontSize: 16,
color: Colors.white,
),
),
DView.height(3),
DInput(
controller: etNisn,
fillColor: AppColors.bgWhite,
hint: 'NISN',
radius: BorderRadius.circular(8),
validator: (input) =>
input == '' ? "Wajib diisi" : null,
),
],
),
DView.height(14),
Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
const Text(
"Kelas",
style: TextStyle(
fontSize: 16,
color: Colors.white,
),
),
DView.height(3),
DropdownButtonFormField<int>(
value: selectedKelas,
hint: const Text("Pilih kelas"),
decoration: InputDecoration(
filled: true,
fillColor: AppColors.bgWhite,
contentPadding: const EdgeInsets.symmetric(
vertical: 10, horizontal: 12),
border: OutlineInputBorder(
borderRadius: BorderRadius.circular(10),
borderSide: BorderSide.none,
),
),
items: AppConstants.kelasList.map((kelas) {
return DropdownMenuItem<int>(
value: kelas['value'],
child: Text(kelas['text']),
);
}).toList(),
onChanged: (int? newValue) {
setState(() {
selectedKelas = newValue;
});
},
validator: (value) => value == null
? "Wajib memilih kelas"
: null,
),
],
),
DView.height(14),
Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
const Text(
"Kode Sekolah",
style: TextStyle(
fontSize: 16,
color: Colors.white,
),
),
DView.height(3),
DInput(
controller: etKodeSekolah,
fillColor: AppColors.bgWhite,
hint: 'Kode sekolah',
radius: BorderRadius.circular(8),
validator: (input) =>
input == '' ? "Wajib diisi" : null,
),
],
),
DView.height(20),
SizedBox(
width: double.infinity,
child: ElevatedButton(
onPressed: () => execute(),
style: ElevatedButton.styleFrom(
backgroundColor: AppColors.btnYellow,
padding: const EdgeInsets.symmetric(
vertical: 14,
),
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(
8), // Border radius yang sama
),
),
child: const Text(
'Buat Akun',
style: TextStyle(
color: Colors.white,
fontSize: 16, // Ukuran teks
fontWeight: FontWeight.bold,
),
),
),
),
DView.height(8),
Row(
mainAxisAlignment: MainAxisAlignment.center,
children: [
const Text(
"Sudah punya akun? ",
style: TextStyle(
color: Colors.white,
fontSize: 14,
),
),
GestureDetector(
onTap: () {
Navigator.push(
context,
MaterialPageRoute(
builder: (context) =>
const LoginPage()),
);
},
child: const Text(
"Login disini",
style: TextStyle(
color: Colors.white,
fontWeight: FontWeight.bold,
fontSize: 14,
),
),
),
],
),
DView.height(20),
const Center(
child: Text(
AppConstants.copyright,
style: TextStyle(
fontSize: 12,
color: Colors.white,
),
),
),
DView.height(8),
],
),
)
],
),
),
],
),
),Editor is loading...
Leave a Comment