Menu
CoddyTech

Własne funkcje

Część sekcji Dodajemy interaktywność ścieżki Flutter w Coddy. Lekcja 6 z 34.

Gdy dwa przyciski robią to samo, możesz napisać kod raz i nadać mu nazwę. To jest funkcja:

void sayHello() {
  print('Hello!');
}

sayHello to jej nazwa, kod w nawiasach klamrowych określa, co robi, a void oznacza, że niczego nie zwraca. Zapisz ją samodzielnie, poza class MyApp, na przykład tuż pod main.

Aby ją uruchomić, zapisz jej nazwę z nawiasami: sayHello();. Aby przekazać ją przyciskowi, zapisz nazwę bez nawiasów:

ElevatedButton(onPressed: sayHello, child: Text('Hi'))

Bez nawiasów przekazujesz przyciskowi samą funkcję, a przycisk uruchamia ją przy każdym naciśnięciu. Z nawiasami, onPressed: sayHello(), Dart uruchomiłby ją od razu i przekazał przyciskowi jej wynik, którym jest nic, więc kod się nie skompiluje.

challenge icon

Wyzwanie

Łatwy

Oba przyciski powinny wypisywać Hello!. Napisz funkcję sayHello, która wypisuje Hello!, i przypisz ją do przycisku Say hello oraz do pływającego przycisku z machającą dłonią.

Spróbuj swoich sił

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: Scaffold(
        body: Center(
          child: ElevatedButton(
            onPressed: () {
              print('Hello!');
            },
            child: Text('Say hello'),
          ),
        ),
        floatingActionButton: FloatingActionButton(
          onPressed: () {},
          child: Icon(Icons.waving_hand),
        ),
      ),
    );
  }
}
quiz iconSprawdź się

Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.

Wszystkie lekcje w sekcji Dodajemy interaktywność

Poćwicz samodzielnie: Kompilator Flutter online