0% found this document useful (0 votes)
6 views2 pages

Temp Conv

Mobile app

Uploaded by

rashambachew
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
6 views2 pages

Temp Conv

Mobile app

Uploaded by

rashambachew
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 2

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(
home: TemperatureConverter(),
);
}
}

class TemperatureConverter extends StatefulWidget {


const TemperatureConverter({super.key});

@override
_TemperatureConverterState createState() => _TemperatureConverterState();
}

class _TemperatureConverterState extends State<TemperatureConverter> {


final TextEditingController _controller = TextEditingController();
double _convertedTemperature = 0.0;
bool _isCelsius = true;

void _convertTemperature() {
double inputTemperature = double.tryParse(_controller.text) ?? 0;
setState(() {
if (_isCelsius) {
_convertedTemperature = inputTemperature * 9 / 5 + 32; // Celsius to
Fahrenheit
} else {
_convertedTemperature = (inputTemperature - 32) * 5 / 9; //
Fahrenheit to Celsius
}
});
}

void _toggleConversion() {
setState(() {
_isCelsius = !_isCelsius;
});
_convertTemperature();
}

@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text('ቴምፕሬቸር መለኪያ'),
),
body: Padding(
padding: const EdgeInsets.all(16.0),
child: Column(
children: [
TextField(
controller: _controller,
keyboardType: TextInputType.number,
decoration: InputDecoration(
labelText: _isCelsius ? 'Enter Celsius' : 'Enter Fahrenheit',
),
),
SizedBox(height: 20),
ElevatedButton(
onPressed: _convertTemperature,
child: Text('Convert'),
),
SizedBox(height: 20),
Text(
'Converted Temperature:
${_convertedTemperature.toStringAsFixed(2)} ${_isCelsius ? 'Fahrenheit' :
'Celsius'}',
),
SizedBox(height: 20),
ElevatedButton(
onPressed: _toggleConversion,
child: Text('Switch to ${_isCelsius ? 'Fahrenheit to Celsius' :
'Celsius to Fahrenheit'}'),
),
],
),
),
);
}
}

You might also like