Sobes.tech
Junior — Middle

Mik a fő különbségek a Material és a Cupertino komponensek között a felhasználói felületek fejlesztése során?

sobes.tech MI

Válasz az MI-től

A Flutterben a Material és Cupertino komponensek két különálló widget-készletet képviselnek, amelyeket különböző platformokra és dizájnstílusokra terveztek:

  • Material: egy Google Material Design alapú widget-készlet, amelyet főként Android alkalmazásokban használnak. Jellemzői a élénk színek, árnyékok, animációk és specifikus felhasználói felületi elemek (pl. FloatingActionButton, AppBar).

  • Cupertino: egy olyan widget-készlet, amely az iOS (Apple) stílusát utánozza. Minimalista és lapos dizájnt kínál, jellemző az iPhone és iPad eszközökre, olyan elemekkel, mint a CupertinoNavigationBar, CupertinoButton.

Fő különbségek:

  • A vizuális stílus és az animációk platformhoz igazítása.
  • Az irányítópult elemek viselkedése (pl. kapcsolók, gombok).
  • A célplatformnak megfelelő használat a natív felhasználói élmény érdekében.

Használati példa:

import 'package:flutter/material.dart';
import 'package:flutter/cupertino.dart';

Widget build(BuildContext context) {
  if (Theme.of(context).platform == TargetPlatform.iOS) {
    return CupertinoButton(
      child: Text('Нажми меня'),
      onPressed: () {},
    );
  } else {
    return ElevatedButton(
      child: Text('Нажми меня'),
      onPressed: () {},
    );
  }
}