Professional Documents
Culture Documents
Laporan Responsi Matakuliah Pemrograman Mobile: Syalafudin Firman Syah 20SA1109
Laporan Responsi Matakuliah Pemrograman Mobile: Syalafudin Firman Syah 20SA1109
PRODI INFORMATIKA
FAKULTAS ILMU KOMPUTER
UNIVERSITAS AMIKOM PURWOKERTO
2022
Jalankan VS Code
Buat project flutter
Buat Folder Screen dan Widgets dengan cara click pada nama project pilih New Folder
Buat file dart dengan cara click kanan pada folder Widets kemudian New File beri nama
JenisKelamin.dart
import 'package:flutter/material.dart';
@override
State<JenisKelamin> createState() => _JenisKelaminState();
}
Buat file dart dengan cara click kanan pada folder Widets kemudian New File beri nama
StatusPernikahan.dart
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
Buat file dart dengan cara click kanan pada folder Widets kemudian New File beri nama
Bahasa.dart
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
String cariBahasa() {
String _bahasa = "";
if (chKIndonesia) {
_bahasa += "Indonesia,";
}
if (chKInggris) {
_bahasa += "Inggris,";
}
if (chKArab) {
_bahasa += "Arab,";
}
if (chKSunda) {
_bahasa += "Sunda,";
}
if (chKJawa) {
_bahasa += "Jawa,";
}
if (chKMadura) {
_bahasa += "Madura,";
}
if (chKMandarin) {
_bahasa += "Mandarin,";
}
if (chKJepang) {
_bahasa += "Jepang";
}
if (chKKorea) {
_bahasa += "Korea,";
}
if (_bahasa.length > 0) {
_bahasa = _bahasa.substring(0, _bahasa.length - 1);
}
return _bahasa;
}
Buat file dart dengan cara click kanan pada folder Widets kemudian New File beri nama
Agama.dart
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
List<String> agama = [
"Silakan Pilih Agama Anda",
"Islam",
"Katolik",
"Protestan",
"Hindu",
"Budha"
];
String agamaDipilih = "Silakan Pilih Agama Anda";
int _selectedIndex = 0;
void _kosongkan() {
controllernama.text = "";
controllertempatlahir.text = "";
controlleralamat.text = "";
jenisKelaminDipilih = "";
statusPernikahanDipilih = "";
agamaDipilih = "Silakan Pilih Agama Anda";
chKIndonesia = false;
chKInggris = false;
chKArab = false;
chKSunda = false;
chKJawa = false;
chKMadura = false;
chKMandarin = false;
chKJepang = false;
chKKorea = false;
}
void _kirimData() {
AlertDialog alertDialog = AlertDialog(
content: Container(
width: 100.0,
height: 200.0,
child: ListView(
children: [
Column(
mainAxisAlignment: MainAxisAlignment.start,
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Align(
alignment: Alignment.topCenter,
child: ElevatedButton(
onPressed: () {
Navigator.pop(context);
},
child: const Text("OK")),
Text("Nama Lengkap : " + controllernama.text),
Text("Alamat : " + controlleralamat.text),
Text("Tempat Lahir : " + controllertempatlahir.text),
Text("Tanggal Lahir : " + controllertanggallahir.text),
Text("Jenis Kelamin : " + jenisKelaminDipilih),
Text("Status : " + statusPernikahanDipilih),
Text("Agama : " + agamaDipilih),
Text("Kemampuan Berbaasa : " + cariBahasa()),
],
),
],
),
),
);
showDialog(
context: context,
builder: (BuildContext context) {
return alertDialog;
},
);
}
void _pencarian() {
AlertDialog alertDialog = AlertDialog(
content: Container(
height: 200.0,
width: 200.0,
child: Column(
children: [
Text("Proses Pencarian"),
Padding(padding: EdgeInsets.only(top: 30.0)),
ElevatedButton(
onPressed: () {
Navigator.pop(context);
},
child: const Text("OK"))
],
),
),
);
showDialog(
context: context,
builder: (BuildContext context) {
return alertDialog;
},
);
}
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
leading: const Icon(Icons.list),
title: const Text("Latihan Formulir"),
backgroundColor: Color.fromARGB(255, 14, 11, 182),
actions: [
IconButton(
onPressed: () {
_pencarian();
},
icon: Icon(Icons.search))
],
),
body: ListView(
children: [
Container(
padding: const EdgeInsets.all(10.0),
child: Column(
children: [
TextField(
decoration: const InputDecoration(
hintText: "Nama Lengkap",
labelText: "Nama Lengkap",
icon: Icon(Icons.list)),
controller: controllernama,
),
TextField(
decoration: const InputDecoration(
hintText: "Alamat Lengkap",
labelText: "Alamat Lengkap",
icon: Icon(Icons.mail)),
controller: controlleralamat,
),
TextField(
decoration: const InputDecoration(
hintText: "Tempat Lahir",
labelText: "Tempat Lahir",
icon: Icon(Icons.location_on)),
controller: controllertempatlahir,
),
TextField(
decoration: const InputDecoration(
hintText: "Tanggal Lahir",
labelText: "Tanggal Lahir",
icon: Icon(Icons.calendar_month)),
controller: controllertempatlahir,
),
const Divider(
height: 0,
thickness: 1,
indent: 0,
endIndent: 0,
color: Colors.black,
),
JenisKelamin(),
const Divider(
height: 0,
thickness: 1,
indent: 0,
endIndent: 0,
color: Colors.black,
),
StatusPernikahan(),
const Divider(
height: 0,
thickness: 1,
indent: 0,
endIndent: 0,
color: Colors.black,
),
Bahasa(),
const Divider(
height: 0,
thickness: 1,
indent: 0,
endIndent: 0,
color: Colors.black,
),
Agama(),
ElevatedButton(
onPressed: () {
_kirimData();
},
child: const Text("Proses")),
],
),
),
],
),
);
}
}
void main() {
runApp(const MaterialApp(
home: Home(),
));
}
“RESPONSI PMO”
List<String> pendidikan = [
"Silahkan Pilih Pendidikan Anda",
"SD",
"SMP",
"SMA",
"D3",
"S1",
];
String pendidikanDipilih = "Silahkan Pilih Pendidikan Anda";
@override
State<Pendidikan> createState() => _PendidikanState();
}
2. Output program
3. Saat tombol proses ditekan tampilkan semua data yang diinputkan menggunakan AlertDialog
4. Saat tombol kosongkan ditekan kosongkan semua inputan