Kalkulator Tip: Tip
Termasuk bagian Membuat Aplikasi Interaktif dalam perjalanan Flutter di Coddy. Pelajaran 31 dari 34.
Selanjutnya, tip. Slider dari 0 hingga 30 persen dengan kenaikan 5 persen untuk memilihnya, lalu aplikasi menampilkan jumlah uangnya.
Simpan persentase dalam State sebagai double yang dimulai dari 10. Jumlah tip bukan sesuatu yang kamu simpan: nilainya didapat dari tagihan dan persentase, jadi hitung di bagian atas build sebagai final:
final double tip = _bill * _tipPercent / 100;Setiap setState, baik dari kolom maupun slider, membangun ulang layar, dan tip dihitung kembali menggunakan nilai-nilai terbaru.
Tantangan
Mudah- Di bawah tagihan, tampilkan
Tip: 10%dan sebuahSliderdari0hingga30dengan6pembagian, dimulai dari 10. - Di bawah slider, tampilkan
Tip amount: 4.00untuk tagihan sebesar 40, dengan dua angka desimal.
Coba sendiri
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: const HomePage(),
);
}
}
class HomePage extends StatefulWidget {
const HomePage({super.key});
@override
State<HomePage> createState() => _HomePageState();
}
class _HomePageState extends State<HomePage> {
double _bill = 0;
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(title: const Text('Tip Calculator')),
body: Padding(
padding: const EdgeInsets.all(24),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
TextField(
keyboardType: const TextInputType.numberWithOptions(decimal: true),
decoration: const InputDecoration(
labelText: 'Bill',
border: OutlineInputBorder(),
),
onChanged: (String value) {
setState(() {
_bill = double.tryParse(value) ?? 0;
});
},
),
const SizedBox(height: 8),
Text('Bill: ${_bill.toStringAsFixed(2)}'),
],
),
),
);
}
}
Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Membuat Aplikasi Interaktif
5Pengambilan Keputusan
bool dan Operator ? :Pengambilan Keputusan dengan if dan elseAnd, Or, dan Not di DartTampilkan dan Sembunyikan WidgetBuat Tombol Tampak Abu-Abu8Proyek: Kalkulator Tip
Kalkulator Tip: TagihanKalkulator Tip: TipLatihan sendiri: Compiler Flutter online