import 'package:cached_network_image/cached_network_image.dart'; import 'package:flutter/material.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; import '../../model/discover/audience_list_data.dart'; class AudienceItem extends StatefulWidget { final Records item; final List> selectUserId; final Function(String, int) selectChange; const AudienceItem({super.key, required this.item, required this.selectUserId, required this.selectChange}); @override State createState() => _AudienceItemState(); } class _AudienceItemState extends State { @override Widget build(BuildContext context) { return Container( margin: EdgeInsets.symmetric(vertical: 10.w), child: Row( mainAxisAlignment: MainAxisAlignment.spaceBetween, children: [ Row( children: [ ClipRRect( borderRadius: BorderRadius.all(Radius.circular(40.w)), child: CachedNetworkImage( imageUrl: "${widget.item.profilePhoto ?? ""}?x-oss-process=image/format,webp/resize,w_120", width: 40.w, height: 40.w, imageBuilder: (context, imageProvider) => Container( decoration: BoxDecoration( image: DecorationImage( image: imageProvider, fit: BoxFit.cover, ), ), ), ), ), SizedBox(width: 5.w,), Column( children: [ Text( widget.item.nickName ?? "", style: TextStyle( fontSize: 12.w ), ), Text( "${widget.item.age ?? ""}岁", style: TextStyle( fontSize: 12.w, color: const Color.fromRGBO(121, 121, 121, 1) ), ), ], ) ], ), Checkbox( value: widget.selectUserId.indexWhere((e) => e["userId"] == widget.item.userId) != -1, onChanged: (value) { widget.selectChange(widget.item.userId ?? "", widget.item.userManagementId ?? 0); }, activeColor: const Color.fromRGBO(117, 98, 249, 1), side: const BorderSide(color: Colors.grey), shape: const CircleBorder(), materialTapTargetSize: MaterialTapTargetSize.shrinkWrap, ), ], ), ); } }