Menu
CoddyTech

Funkcje z parametrami

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

Funkcja może przyjmować wartość za każdym razem, gdy ją wywołujesz. Ta wartość to parametr, zapisany w nawiasach wraz z typem:

void greet(String name) {
  print('Hi, $name!');
}

greet('Ada');    // Cześć, Ada!
greet('Linus');  // Cześć, Linus!

Wewnątrz funkcji name jest zmienną przechowującą przekazaną wartość. Jedna funkcja wykonuje teraz pracę wielu.

Przycisk nie może samodzielnie przekazać wartości: onPressed: wymaga funkcji bez parametrów. Dlatego umieść wywołanie w małej funkcji bez nazwy, takiej, którą poznano w lekcji „Twój pierwszy przycisk”:

ElevatedButton(
  onPressed: () { greet('Ada'); },
  child: Text('Ada'),
)
challenge icon

Wyzwanie

Łatwy

Zastąp orderTea jedną funkcją order, która przyjmuje String drink i wypisuje One Tea, please, One Coffee, please lub One Juice, please. Spraw, aby wszystkie trzy przyciski z niej korzystały.

Spróbuj swoich sił

import 'package:flutter/material.dart';

void main() {
  runApp(const MyApp());
}

void orderTea() {
  print('One Tea, please');
}

class MyApp extends StatelessWidget {
  const MyApp({super.key});

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      debugShowCheckedModeBanner: false,
      home: Scaffold(
        body: Center(
          child: Column(
            mainAxisSize: MainAxisSize.min,
            children: [
              ElevatedButton(onPressed: orderTea, child: Text('Tea')),
              SizedBox(height: 12),
              ElevatedButton(onPressed: () {}, child: Text('Coffee')),
              SizedBox(height: 12),
              ElevatedButton(onPressed: () {}, child: Text('Juice')),
            ],
          ),
        ),
      ),
    );
  }
}
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