BlackBoY_

praktikum_pertemuan_9

Jun 6th, 2022
225
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Dart 2.58 KB | None | 0 0
  1. import 'package:flutter/material.dart';
  2.  
  3. void main() {
  4.   runApp(MyApp());
  5. }
  6.  
  7. class MyApp extends StatefulWidget {
  8.   @override
  9.   State<MyApp> createState() => _MyAppState();
  10. }
  11.  
  12. class _MyAppState extends State<MyApp> {
  13.   double _angka = 0;
  14.   double _hasil = 0;
  15.   List<String> _ukuran = ["KM", "M"];
  16.   var _ukuranSemula;
  17.   var _ukuranKonversi;
  18.   @override
  19.   Widget build(BuildContext context) {
  20.     return MaterialApp(
  21.       home: Scaffold(
  22.         appBar: AppBar(
  23.           title: Text("Pengonversi Panjang"),
  24.         ),
  25.         body: Container(
  26.           padding: EdgeInsets.all(50),
  27.           child: Column(
  28.             children: [
  29.               Text("Angka"),
  30.               TextField(
  31.                 onChanged: (text) {
  32.                   var bacaAngka = double.tryParse(text);
  33.                   if (bacaAngka != null) {
  34.                     setState(() {
  35.                       _angka = bacaAngka;
  36.                     });
  37.                   } else {
  38.                     setState(() {
  39.                       _angka = 0;
  40.                     });
  41.                   }
  42.                 },
  43.               ),
  44.               Text("Dari"),
  45.               DropdownButton(
  46.                 value: _ukuranSemula,
  47.                 items: _ukuran.map((String value) {
  48.                   return DropdownMenuItem(
  49.                     child: Text(value),
  50.                     value: value,
  51.                   );
  52.                 }).toList(),
  53.                 onChanged: (value) {
  54.                   setState(() {
  55.                     _ukuranSemula = value;
  56.                   });
  57.                 },
  58.               ),
  59.               Text("Menjadi"),
  60.               DropdownButton(
  61.                 value: _ukuranKonversi,
  62.                 items: _ukuran.map((String value) {
  63.                   return DropdownMenuItem(
  64.                     child: Text(value),
  65.                     value: value,
  66.                   );
  67.                 }).toList(),
  68.                 onChanged: (value) {
  69.                   setState(() {
  70.                     _ukuranKonversi = value;
  71.                   });
  72.                 },
  73.               ),
  74.               ElevatedButton(onPressed: () => convert(), child: Text("UBAH")),
  75.               Text(_hasil.toString()),
  76.             ],
  77.           ),
  78.         ),
  79.       ),
  80.     );
  81.   }
  82.  
  83.   void convert() {
  84.     setState(() {
  85.       if (_ukuranSemula == "KM" && _ukuranKonversi == "M") {
  86.         _hasil = _angka * 1000;
  87.       } else if (_ukuranSemula == "M" && _ukuranKonversi == "KM") {
  88.         _hasil = _angka / 1000;
  89.       } else {
  90.         _hasil = _angka;
  91.       }
  92.     });
  93.   }
  94. }
  95.  
Add Comment
Please, Sign In to add comment