Curso Flutter y Laravel App de Turismo
Implementación de la pantalla Empresas para mostrar una lista
La pantalla empresa mostrará las empresas que pertenezcan a una determinada ruta que haya sido elegida por el usuario, básicamente un listview
Es aqui donde vamos a cargar una lista de empresas desde la base de datos Sqlite y mostrarlas en un widget ListView con información necesaria solo para poder elegir y continuar con el flujo de uso de la app.
Veamos el código Dart
import 'package:app/basededatos/DBmanager.dart';
import 'package:app/basededatos/Ruta.dart';
import 'package:app/pantallas/pantallaEmpresa.dart';
import 'package:flutter/material.dart';
var basededatos = new DBmanager();
class pantallaEmpresas extends StatefulWidget {
Ruta ruta;
pantallaEmpresas(this.ruta);
@override
_pantallaEmpresasState createState() => _pantallaEmpresasState(this.ruta);
}
class _pantallaEmpresasState extends State<pantallaEmpresas> {
Ruta ruta;
_pantallaEmpresasState(this.ruta);
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text("RUTA "+ruta.nombre),
),
backgroundColor: Colors.amber,
body: Container(
child: FutureBuilder(
future: basededatos.obtenerEmpresas("ruta_id=" + ruta.id.toString()),
builder: (BuildContext c, AsyncSnapshot s) {
if (s.hasData) {
return ListView.builder(
itemCount: s.data == null ? 0 : s.data.length,
itemBuilder: (_c, _i) {
return GestureDetector(
onTap: () {
Navigator.of(context).push(MaterialPageRoute(
builder: (BuildContext) =>
pantallaEmpresa(s.data[_i])));
},
child: Card(
elevation: 10,
margin: EdgeInsets.all(10),
child: Row(
children: [
Image.network(
"http://..../appturismo/public/img/empresa/" +
s.data[_i].urllogo,
width: 120,
height: 120,
fit: BoxFit.cover,
),
Text(
s.data[_i].razonsocial,
style: TextStyle(
fontSize: 20,
fontWeight: FontWeight.w700,
color: Colors.green,
),
)
],
),
),
);
});
} else {
return Center(
child: Text("NO EXISTEN EMPRESAS"),
);
}
},
),
),
);
}
}
1027 visitas
« Capítulo 24 – Pantalla Lista de Rutas
Capítulo 26 – Pantalla Empresa »
Descarga el código fuente del proyecto adquiriendo el curso completo
Comprar© Todos los derechos reservados Codea App | ...de frente al código!!! | 2020 - 2023