Files
app_notificaciones_ador/lib/bars/app_bar

47 lines
1.4 KiB
Plaintext

import 'package:flutter/material.dart';
import 'package:crcivan/pages/utils.dart';
class CustomAppBar extends StatelessWidget implements PreferredSizeWidget {
const CustomAppBar({Key? key}) : super(key: key);
@override
Widget build(BuildContext context) {
// Determinar si estamos en una pantalla pequeña
final screenWidth = MediaQuery.of(context).size.width;
final isSmallScreen = screenWidth < 600;
// Calcular la altura del AppBar dinámicamente
final appBarHeight = isSmallScreen ? 70.0 : 85.0;
// Calcular el tamaño del logo - un tercio más pequeño que la propuesta anterior
final logoHeight = isSmallScreen ? 40.0 : 53.0;
final logoPadding = isSmallScreen ? 4.0 : 8.0;
return AppBar(
toolbarHeight: appBarHeight,
title: const Text(''),
centerTitle: true,
backgroundColor: const Color.fromARGB(255, 78, 169, 6),
iconTheme: const IconThemeData(
color: Colors.white,
),
flexibleSpace: Container(
padding: EdgeInsets.symmetric(vertical: logoPadding),
child: Center(
child: Image.asset(
'assets/logo-civan.png',
height: logoHeight,
fit: BoxFit.contain,
),
),
),
);
}
@override
Size get preferredSize {
// Altura dinámica según el tamaño de pantalla
return Size.fromHeight(85.0); // Valor ajustado para el logo más pequeño
}
}