TIF_E41211115_Genso_quiz_app/lib/component/widget/recomendation_component.dart

72 lines
2.0 KiB
Dart

import 'package:flutter/material.dart';
import 'package:quiz_app/component/quiz_container_component.dart';
import 'package:quiz_app/data/models/quiz/quiz_listing_model.dart';
class RecomendationComponent extends StatelessWidget {
final String title;
final List<QuizListingModel> datas;
final Function(String) itemOnTap;
const RecomendationComponent({
required this.title,
required this.datas,
required this.itemOnTap,
super.key,
});
@override
Widget build(BuildContext context) {
return Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
_buildSectionTitle(title),
const SizedBox(height: 10),
datas.isNotEmpty
// ? Text("yeay ${datas.length}")
? ListView.builder(
shrinkWrap: true,
physics: NeverScrollableScrollPhysics(),
itemCount: datas.length,
itemBuilder: (context, index) => QuizContainerComponent(
data: datas[index],
onTap: itemOnTap,
),
)
: SizedBox.shrink()
],
);
}
// Widget _label() {
// return const Padding(
// padding: EdgeInsets.symmetric(horizontal: 16),
// child: Text(
// "Quiz Recommendation",
// style: TextStyle(
// fontSize: 18,
// fontWeight: FontWeight.bold,
// color: Color(0xFF172B4D), // dark text
// ),
// ),
// );
// }
Widget _buildSectionTitle(String title) {
return Padding(
padding: const EdgeInsets.symmetric(horizontal: 8.0),
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
Text(
title,
style: const TextStyle(fontSize: 18, fontWeight: FontWeight.bold),
),
Text(
"Lihat semua",
style: TextStyle(fontSize: 14, color: Colors.blue.shade700),
),
],
),
);
}
}