favorite_page_view(refactor)
unknown
dart
a year ago
1.9 kB
6
Indexable
import 'package:flutter/material.dart';
import 'package:provider/provider.dart';
import '../../../../core/common/app/providers/charge_stations_provider.dart';
import '../../domain/entities/charger_station.dart';
import '../bloc/find_bloc.dart';
import '../views/chargerstation_detail_screen.dart';
import '../widgets/chargerstation_item.dart';
class FavoritePageView extends StatelessWidget {
const FavoritePageView({super.key, required this.favoriteChargeStations});
final List<ChargerStation> favoriteChargeStations;
@override
Widget build(BuildContext context) {
return Consumer<ChargeStationsProvider>(builder: (_, provider, __) {
return Padding(
padding: EdgeInsets.only(
top: MediaQuery.of(context).size.height * 0.19,
right: 16,
left: 16),
child: SingleChildScrollView(
child: ListView.builder(
physics: const NeverScrollableScrollPhysics(),
shrinkWrap: true,
itemCount: favoriteChargeStations.length,
itemBuilder: (context, index) {
return InkWell(
onTap: () {
provider.selectFavoriteChargeStation(
favoriteChargeStations[index]);
Navigator.pushNamed(
context, ChargerstationDetail.routeName);
},
child: ChargerstationItem(
chargerstation: favoriteChargeStations[index],
onNavigationClick: () {
context.read<FindBloc>().add(OpenMapsNavigationEvent(
favoriteChargeStations[index].coordinates));
},
),
);
}),
),
);
});
}
}
Editor is loading...
Leave a Comment