More
Cómo usar botones segmentados en Flutter con Back4app
10 min
introducción los botones segmentados son un componente de ui introducido en material 3 que permite a los usuarios seleccionar entre dos y cinco opciones son particularmente útiles cuando deseas ofrecer un conjunto de opciones exclusivas o no exclusivas de manera limpia y organizada en este tutorial, exploraremos cómo usar los botones segmentados en una aplicación flutter, aprovechando back4app como backend para almacenar y gestionar las opciones seleccionadas requisitos previos antes de comenzar, asegúrate de tener lo siguiente una cuenta de back4app regístrate para obtener una cuenta gratuita en back4app com https //www back4app com un entorno de desarrollo flutter configurado en tu máquina local sigue la guía de instalación de flutter https //flutter dev/docs/get started/install si aún no lo has configurado conocimientos básicos de dart, widgets de flutter y uso de back4app para servicios backend paso 1 – configurando tu backend de back4app crea un proyecto de back4app inicia sesión en tu cuenta de back4app https //www back4app com/ y crea un nuevo proyecto crea clases parse para este tutorial, crea una clase parse llamada userpreferences para almacenar las opciones seleccionadas de los botones segmentados nombre de usuario (string) el nombre del usuario opcionseleccionada (string) la opción seleccionada por el usuario obtén tus credenciales de back4app navega a la configuración de tu proyecto para recuperar tu id de aplicación y clave de cliente, que necesitarás para conectar tu aplicación flutter a back4app paso 2 – configuración del proyecto flutter crear un nuevo proyecto flutter abre tu terminal o símbolo del sistema y ejecuta flutter create segmented button example agregar dependencias abre pubspec yaml y agrega las siguientes dependencias dependencies flutter sdk flutter parse server sdk flutter latest version ejecuta flutter pub get para instalar estas dependencias inicializa parse en tu aplicación en lib/main dart , inicializa el sdk de parse import 'package\ flutter/material dart'; import 'package\ parse server sdk flutter/parse server sdk flutter dart'; void main() async { widgetsflutterbinding ensureinitialized(); const keyapplicationid = 'your back4app app id'; const keyclientkey = 'your back4app client key'; const keyparseserverurl = 'https //parseapi back4app com'; await parse() initialize(keyapplicationid, keyparseserverurl, clientkey keyclientkey, autosendsessionid true); runapp(myapp()); } class myapp extends statelesswidget { @override widget build(buildcontext context) { return materialapp( home preferencescreen(), ); } } reemplaza 'your back4app app id' y 'your back4app client key' con tus credenciales reales de back4app paso 3 – implementando botones segmentados crea el widget preferencescreen en lib/main dart , agrega un nuevo widget para mostrar y manejar los botones segmentados class preferencescreen extends statefulwidget { @override preferencescreenstate createstate() => preferencescreenstate(); } class preferencescreenstate extends state\<preferencescreen> { string? selectedoption; final list\<buttonsegment\<string>> options = \[ buttonsegment(value 'option 1', label text('option 1')), buttonsegment(value 'option 2', label text('option 2')), buttonsegment(value 'option 3', label text('option 3')), ]; @override widget build(buildcontext context) { return scaffold( appbar appbar(title text('user preferences')), body padding( padding const edgeinsets all(16 0), child column( mainaxisalignment mainaxisalignment center, children \[ segmentedbutton\<string>( segments options, selected selectedoption == null ? {} { selectedoption!}, onselectionchanged (newselection) { setstate(() { selectedoption = newselection first; }); savepreference( selectedoption!); }, ), sizedbox(height 20), if ( selectedoption != null) text('selected $ selectedoption', style textstyle(fontsize 16)), ], ), ), ); } future\<void> savepreference(string selectedoption) async { final userpreference = parseobject('userpreferences') set('username', 'test user') // this would normally come from user data set('selectedoption', selectedoption); await userpreference save(); } } este código define una interfaz de usuario simple con un botón segmentado que permite a los usuarios elegir entre tres opciones la opción seleccionada se almacena en back4app cada vez que cambia la selección paso 4 – ejecutando la aplicación ejecuta tu aplicación usando flutter run deberías ver los botones segmentados mostrados en la pantalla seleccionar una opción actualizará el estado y almacenará la selección en back4app verifica los datos en back4app iniciando sesión en tu panel de control de back4app y revisando la userpreferences clase deberías ver entradas correspondientes a tus selecciones de la aplicación flutter conclusión en este tutorial, exploramos cómo implementar y usar botones segmentados en flutter también demostramos cómo integrar flutter con back4app para almacenar preferencias de usuario los botones segmentados ofrecen una forma limpia e intuitiva de presentar a los usuarios múltiples opciones, y cuando se combinan con un backend potente como back4app, pueden mejorar significativamente la experiencia del usuario en tu aplicación para más información sobre los widgets de flutter, consulta la documentación de flutter https //flutter dev/docs , y para consejos sobre integración de backend, visita la documentación de back4app https //www back4app com/docs ¡feliz codificación!