Membuat Tampilan CRUD daftar kontak
Nama: Apriarni Luan
Kelas: B informatika
Assalamu'allaikum warahamtullahi wabaraktu
Kali ini kita akan membuat tampilan CRUD daftar kontak
CRUD adalah serangkaian fungsionalitas mendasar yang biasanya digunakan dalam manajemen database.CRUD terdiri dari CREATE.READ.UPDATE.DELETE.fungsi tersebut merupakan dasar bagi sebagian besar aplikasi.Nah berikut ini kita akan membuat tampilan CRUD daftar kontak.
1.Buat sebuah file dengan New Flutter Project
2.Berikut ini isi dari main dart
main.dart:
import 'package:aplikasi_kontak/home.dart';
import 'package:flutter/material.dart';
void main() {
runApp(const MyApp());
}
class MyApp extends StatelessWidget {
const MyApp({super.key});
@override
Widget build(BuildContext context) {
return MaterialApp(
debugShowCheckedModeBanner: false,
home: HomePage(),
);
}
}
3.lalu isi dari home.dart
home.dart:
import 'package:flutter/material.dart';
import 'create.dart';
import 'update.dart';
class HomePage extends StatefulWidget {
const HomePage({super.key});
@override
State<HomePage> createState() => _HomePageState();
}
class _HomePageState extends State<HomePage> {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
backgroundColor: Colors.blue,
title: Text('Kontak'),
),
body: Column(
children: <Widget>[
ListTile(
title: Text('Nama Kontak 1'),
subtitle: Text('Nomor Telepon 1'),
),
ListTile(
title: Text('Nama Kontak 2'),
subtitle: Text('Nomor Telepon 2'),
),
IconButton(
onPressed: () {
Navigator.push(context, MaterialPageRoute(builder: (builder) {
return UpdateDb();
}));
},
icon: Icon(Icons.edit))
],
),
floatingActionButton: FloatingActionButton(
onPressed: () {
Navigator.push(context, MaterialPageRoute(builder: (builder) {
return CreateDb();
}));
},
child: const Icon(Icons.add),
),
);
}
}
4.Berikut create.dart
create.dart:
import 'package:flutter/material.dart';
class CreateDb extends StatefulWidget {
const CreateDb({super.key});
@override
State<CreateDb> createState() => _CreateDbState();
}
class _CreateDbState extends State<CreateDb> {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(title: Text('Kontak Baru')),
body: Padding(
padding: const EdgeInsets.all(20),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
SizedBox(
height: 30,
),
Text('Nama'),
TextField(),
SizedBox(
height: 30,
),
Text('Nomor Telepon'),
TextField(),
SizedBox(
height: 30,
),
ElevatedButton(
onPressed: () {},
child: Text('Simpan'),
)
],
),
),
);
}
}
5.Lalu update.dart
update.dart:
import 'package:flutter/material.dart';
class UpdateDb extends StatefulWidget {
const UpdateDb({super.key});
@override
State<UpdateDb> createState() => _UpdateDbState();
}
class _UpdateDbState extends State<UpdateDb> {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(title: Text('Edit Kontak')),
body: Container(
child: Padding(
padding: const EdgeInsets.all(20),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
SizedBox(
height: 30,
),
Text('Nama'),
TextField(),
SizedBox(
height: 30,
),
Text('Nomor Telepon'),
TextField(),
SizedBox(
height: 30,
),
ElevatedButton(onPressed: () {}, child: Text('Simpan')),
SizedBox(
height: 20,
),
ElevatedButton(
onPressed: () {},
child: Text('Hapus'),
style: ButtonStyle(
backgroundColor: MaterialStateProperty.all(Colors.red),
),
),
],
),
),
),
);
}
}
Berikut ini Hasilnya:



Komentar
Posting Komentar