index.dart 4.2KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107
  1. import 'package:carousel_slider/carousel_slider.dart';
  2. import 'package:farmer_client/pages/TabBar/widgets/home/widgets/headers.dart';
  3. import 'package:flutter/material.dart';
  4. import 'package:flutter_screenutil/flutter_screenutil.dart';
  5. import '../../../../widgets/CarsCard.dart';
  6. import '../../../../widgets/Search.dart';
  7. class HomePage extends StatefulWidget {
  8. const HomePage({Key? key}) : super(key: key);
  9. @override
  10. State<HomePage> createState() => _HomePageState();
  11. }
  12. class _HomePageState extends State<HomePage> {
  13. final CarouselController _controller = CarouselController();
  14. final List<String> imgList = [
  15. 'https://images.unsplash.com/photo-1520342868574-5fa3804e551c?ixlib=rb-0.3.5&ixid=eyJhcHBfaWQiOjEyMDd9&s=6ff92caffcdd63681a35134a6770ed3b&auto=format&fit=crop&w=1951&q=80',
  16. 'https://images.unsplash.com/photo-1522205408450-add114ad53fe?ixlib=rb-0.3.5&ixid=eyJhcHBfaWQiOjEyMDd9&s=368f45b0888aeb0b7b08e3a1084d3ede&auto=format&fit=crop&w=1950&q=80',
  17. 'https://images.unsplash.com/photo-1519125323398-675f0ddb6308?ixlib=rb-0.3.5&ixid=eyJhcHBfaWQiOjEyMDd9&s=94a1e718d89ca60a6337a6008341ca50&auto=format&fit=crop&w=1950&q=80',
  18. 'https://images.unsplash.com/photo-1523205771623-e0faa4d2813d?ixlib=rb-0.3.5&ixid=eyJhcHBfaWQiOjEyMDd9&s=89719a0d55dd05e2deae4120227e6efc&auto=format&fit=crop&w=1953&q=80',
  19. 'https://images.unsplash.com/photo-1508704019882-f9cf40e475b4?ixlib=rb-0.3.5&ixid=eyJhcHBfaWQiOjEyMDd9&s=8c6e5e3aba713b17aa1fe71ab4f0ae5b&auto=format&fit=crop&w=1352&q=80',
  20. 'https://images.unsplash.com/photo-1519985176271-adb1088fa94c?ixlib=rb-0.3.5&ixid=eyJhcHBfaWQiOjEyMDd9&s=a0c8d632e977f94e5d312d9893258f59&auto=format&fit=crop&w=1355&q=80'
  21. ];
  22. @override
  23. Widget build(BuildContext context) {
  24. return Container(
  25. alignment: Alignment.center,
  26. padding: EdgeInsets.fromLTRB(15.w, 0, 15.w, 0),
  27. child: ListView(
  28. children: [
  29. headers(),
  30. Container(
  31. margin: EdgeInsets.fromLTRB(0, 15, 0, 0),
  32. child: CarouselSlider(
  33. //API https://pub.dev/documentation/carousel_slider/latest/carousel_options/CarouselOptions-class.html
  34. items:imgList
  35. .map((item) => Container(
  36. child: Center(
  37. child:
  38. Image.network(item, fit: BoxFit.cover, width: 350.w)),
  39. ))
  40. .toList(),
  41. options: CarouselOptions(
  42. autoPlay: true,
  43. enlargeCenterPage: false,//图片中心放大
  44. viewportFraction: 1,//每个页面应占据的视口部分。默认为 0.8,这意味着每个页面填充 80% 的轮播。
  45. // aspectRatio: 1.6,//纵横比
  46. height: 214.w,
  47. initialPage: 1,//初始页
  48. ),
  49. ),
  50. ),
  51. Container(
  52. margin: EdgeInsets.fromLTRB(0, 20, 0, 20),
  53. child: Column(
  54. children: [
  55. Row(
  56. mainAxisAlignment: MainAxisAlignment.spaceBetween,
  57. children: [
  58. Container(
  59. child: Row(
  60. children: [
  61. Padding(padding: EdgeInsets.fromLTRB(0, 0, 8, 0),
  62. child:Image(image: AssetImage('images/icons/carsListImga.png'),fit: BoxFit.cover,width: 20.w,),
  63. ),
  64. Text('农机列表',
  65. style: TextStyle(
  66. color: Color(0xff222222),
  67. fontSize: 20.sp,
  68. fontWeight: FontWeight.bold
  69. ),
  70. )
  71. ],
  72. ),
  73. ),
  74. Container(
  75. child:GestureDetector(
  76. child: Text('更多 >>'),
  77. onTap: (){
  78. print('点我进入农机搜索/更多页');
  79. },
  80. ),
  81. )
  82. ],
  83. ),
  84. CarsCard(),
  85. CarsCard(),
  86. CarsCard(),
  87. ],
  88. )
  89. ),
  90. ],
  91. ),
  92. );
  93. }
  94. }