DAVUL UYGULAMASI — REFACTOR ÖNCESİ
import ‘package:flutter/material.dart’;
import ‘package:audioplayers/audioplayers.dart’; // sesleri çalmak için kütüphane yükledik
void main(){
runApp(DavulUygulamasi());
}
class DavulUygulamasi extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
backgroundColor: Colors.black, // Uygulamanın arka zemin renk ayarını Scaffold üzerinden yaptık
body:
DavulSayfasi(), // Kodları parçalı anlaşılır yapmak için body kısmını dolduracağımız fonk. hazırladık
),
);
}
}
class DavulSayfasi extends StatelessWidget { // Kodu tek parça ve okuması zor olmasın diye ek fonk. hazırladık
final oynatici = AudioCache(); // Ses kütüphanesinin AudioCache() metodunu instance ettik
void sesiCal(String parca){ // Sesleri çalmak için parça adını parametre olarak alıyoruz
oynatici.play(parca); // sesiCal() fonksiyonu ile her butonda ayrı ayrı kod yazmıyoruz
}
@override
Widget build(BuildContext context) {
return SafeArea(
child: Padding(
padding: const EdgeInsets.fromLTRB(8, 4, 8, 4), // hücrelerin en dış boşlukları için
child: Column( // 4X2 hücre yapısını içine alan Column tanımladık
children: [
Expanded( // Row ekranda görünmesi ve yayılması için Expanded içine aldık
child:
Row( // Column içindeki 1. sol satır
children: [
Expanded( // FlatButton ekranda görünmesi ve yayılması için Expanded içine aldık
child: FlatButton(
padding: EdgeInsets.all(10),
onPressed: (){
sesiCal(“bip.wav”);
},
child: Container( // Container FlatButton ile sarıldı
color: Colors.blueAccent, // Containerin içene renk verdik
),
),
),
Expanded(
child: FlatButton(
padding: EdgeInsets.all(10),
onPressed: (){
sesiCal(“bongo.wav”);
},
child: Container(
color: Colors.redAccent,
),
),
),
],
),
),
Expanded( // Row ekranda görünmesi ve yayılması için Expanded içine aldık
child:
Row( // Column içindeki 1. sağ satır
children: [
Expanded(
child: FlatButton(
padding: EdgeInsets.all(10), //Hücreler arası boşluk vermek için
onPressed: (){
sesiCal(“clap1.wav”);
},
child: Container(
color: Colors.grey,
),
),
),
Expanded(
child: FlatButton(
padding: EdgeInsets.all(10),
onPressed: (){
oynatici.play(“woo.wav”);
},
child: Container(
color: Colors.white,
),
),
),
],
),
),
Expanded( // Row ekranda görünmesi ve yayılması için Expanded içine aldık
child:
Row(
children: [
Expanded(
child: FlatButton(
padding: EdgeInsets.all(10),
onPressed: (){
oynatici.play(“woo.wav”);
},
child: Container(
color: Colors.cyan,
),
),
),
Expanded(
child: FlatButton(
padding: EdgeInsets.all(10),
onPressed: (){
oynatici.play(“woo.wav”);
},
child: Container(
color: Colors.brown,
),
),
),
],
),
),
Expanded( // Row ekranda görünmesi ve yayılması için Expanded içine aldık
child:
Row(
children: [
Expanded(
child: FlatButton(
padding: EdgeInsets.all(10),
onPressed: (){
oynatici.play(“woo.wav”);
},
child: Container(
color: Colors.pink,
),
),
),
Expanded(
child: FlatButton(
padding: EdgeInsets.all(10),
onPressed: (){
oynatici.play(“woo.wav”);
},
child: Container(
color: Colors.green,
),
),
),
],
),
),
],
),
),
);
}
}