tile static method
Creates a tile skeleton conforming to TTile geometry.
Implementation
static Widget tile({
Key? key,
TSize size = TTileSize.h5,
bool hasLeading = true,
bool hasSubtitle = true,
bool hasTrailing = false,
Color? color,
Color? highlightColor,
Duration duration = const Duration(milliseconds: 1500),
bool loading = true,
}) {
if (!loading) return const SizedBox.shrink();
return Padding(
key: key,
padding: EdgeInsets.symmetric(horizontal: size.hPad, vertical: size.vPad),
child: Row(
children: [
if (hasLeading) ...[
TSkeleton.rect(
width: size.icon + 12.0,
height: size.icon + 12.0,
borderRadius: BorderRadius.circular(size.radius),
color: color,
highlightColor: highlightColor,
duration: duration,
),
SizedBox(width: size.spacing + 6.0),
],
Expanded(
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
mainAxisSize: MainAxisSize.min,
children: [
TSkeleton.text(
width: 130.0,
height: size.font,
color: color,
highlightColor: highlightColor,
duration: duration,
),
if (hasSubtitle) ...[
const SizedBox(height: 4.0),
TSkeleton.text(
width: 80.0,
height: size.font * 0.8,
color: color,
highlightColor: highlightColor,
duration: duration,
),
],
],
),
),
if (hasTrailing) ...[
const SizedBox(width: 12.0),
TSkeleton.rect(
width: 50.0,
height: 22.0,
borderRadius: BorderRadius.circular(4.0),
color: color,
highlightColor: highlightColor,
duration: duration,
),
],
],
),
);
}