Menu
CoddyTech

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).

challenge icon

Görev

Kolay

Sayaç 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),
          ],
        ),
      ),
    );
  }
}
quiz iconKendini test et

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

Kendi başına pratik yap: Online Flutter derleyicisi