Sayacı Artırma ve Azaltma
Coddy'nin Flutter Journey'sinin Etkileşimli Uygulamalar bölümünün bir parçası. Ders 13 / 34.
Bir işlev State sınıfının içinde de bulunabilir. Burada State'in değişkenlerini okuyabilir ve setState çağırabilir:
void _increase() {
setState(() {
_count++;
});
}_count++, _count = _count + 1 ifadesinin kısa yazımıdır ve _count-- bir azaltır. Bir sınıfa ait olan işleve yöntem denir; özel olanlar da değişkenlerde olduğu gibi _ ile başlar.
Kendi İşlevleriniz bölümündeki gibi, düğmeye parantez kullanmadan adıyla aktarın: IconButton(icon: Icon(Icons.add), onPressed: _increase).
Görev
KolaySayaç yalnızca artıyor. setState içinde bir azaltan _decrease adlı bir metot ve sayının önüne, bu metodu çağıran Icons.remove içeren bir IconButton ekle.
Kendin dene
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(),
);
}
}
class HomePage extends StatefulWidget {
const HomePage({super.key});
@override
State<HomePage> createState() => _HomePageState();
}
class _HomePageState extends State<HomePage> {
int _count = 0;
void _increase() {
setState(() {
_count++;
});
}
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(title: Text('Counter')),
body: Center(
child: Row(
mainAxisSize: MainAxisSize.min,
children: [
Text('$_count', style: TextStyle(fontSize: 48)),
IconButton(icon: Icon(Icons.add), onPressed: _increase),
],
),
),
);
}
}
Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Etkileşimli Uygulamalar bölümündeki tüm dersler
7Anahtarlar ve Kaydırıcılar
Bir Anahtarla Açıp KapatmaBir Onay Kutusunu İşaretlemeKaydırıcıyla Bir Değer Seçme3Durum Tutan Widget'lar
Kendi Widget SınıfınızSnackBar GöstermesetState Ekranı Yeniden ÇizerStatefulWidget YazmaSayacı Artırma ve AzaltmaHot Reload Durumu KorurKendi başına pratik yap: Online Flutter derleyicisi