Menu
CoddyTech

Funktionen mit Parametern

Teil des Abschnitts Apps interaktiv gestalten der Flutter-Journey von Coddy. Lektion 7 von 34.

Eine Funktion kann bei jedem Aufruf einen Wert entgegennehmen. Dieser Wert ist ein Parameter, der zusammen mit seinem Typ in Klammern geschrieben wird:

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

greet('Ada');    // Hallo, Ada!
greet('Linus');  // Hallo, Linus!

Innerhalb der Funktion ist name eine Variable, die den übergebenen Wert enthält. Eine Funktion erledigt jetzt die Arbeit vieler Funktionen.

Ein Button kann nicht selbst einen Wert übergeben: onPressed: erwartet eine Funktion ohne Parameter. Verpacke den Aufruf also in eine kleine Funktion ohne Namen, wie du sie in „Your First Button“ kennengelernt hast:

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

Aufgabe

Einfach

Ersetze orderTea durch eine Funktion order, die einen String drink entgegennimmt und One Tea, please, One Coffee, please oder One Juice, please ausgibt. Lass alle drei Schaltflächen diese Funktion verwenden.

Probier es selbst

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 iconTeste dich selbst

Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.

Alle Lektionen in Apps interaktiv gestalten

Übe selbstständig: Online-Flutter-Compiler