| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192 |
- import 'package:abroad_location/data/bean/user_info.dart';
- import 'package:abroad_location/resource/assets.gen.dart';
- import 'package:abroad_location/resource/colors.gen.dart';
- import 'package:abroad_location/resource/string.gen.dart';
- import 'package:abroad_location/utils/base_expand.dart';
- import 'package:flutter/cupertino.dart';
- import 'package:flutter_screenutil/flutter_screenutil.dart';
- typedef OnFriendCallback = void Function(UserInfo userInfo);
- Widget locationFriendItem(UserInfo userInfo,
- {OnFriendCallback? onItemClick, OnFriendCallback? onTrackClick}) {
- return GestureDetector(
- onTap: (){
- onItemClick?.call(userInfo);
- },
- child: Container(
- height: 70.w,
- margin: EdgeInsets.symmetric(horizontal: 8.w),
- decoration: BoxDecoration(
- color: ColorName.white,
- borderRadius: BorderRadius.circular(20.w),
- ),
- child: Row(
- children: [
- SizedBox(width: 12.w),
- Container(
- //阴影,
- decoration: BoxDecoration(
- borderRadius: BorderRadius.circular(18.w),
- boxShadow: [
- BoxShadow(
- color: ColorName.black20.withOpacity(0.1),
- blurRadius: 5.w)
- ]),
- child: Assets.images.iconLocationMeAvatar.image(width: 44.w, height: 44.w)),
- SizedBox(width: 11.w),
- Expanded(
- child: IntrinsicHeight(
- child: Column(
- crossAxisAlignment: CrossAxisAlignment.start,
- children: [
- Row(children: [
- Text(userInfo.phoneNumber ?? '',
- style: TextStyle(
- fontSize: 16.sp,
- color: ColorName.black80,
- fontWeight: FontWeight.bold)),
- SizedBox(width: 5.w),
- Expanded(
- child: Text('1h',
- style: TextStyle(fontSize: 12.sp, color: ColorName.black40)),
- ),
- SizedBox(width: 5.w),
- ]),
- Text('Hong Kong',
- style: TextStyle(fontSize: 12.sp, color: ColorName.black50))
- ],
- ),
- ),
- ),
- GestureDetector(
- onTap: (){
- onTrackClick?.call(userInfo);
- },
- child: Container(
- decoration: BoxDecoration(
- borderRadius: BorderRadius.circular(10.w),
- border: Border.all(color: '#4476FF'.color, width: 1.w)),
- padding: EdgeInsets.only(
- left: 10.w, top: 5.w, bottom: 6.w, right: 10.w),
- child: Row(
- children: [
- Assets.images.iconTrack.image(width: 16.w, height: 16.w),
- SizedBox(width: 2.w),
- Text(
- StringName.historyTrace,
- style: TextStyle(
- fontSize: 14.sp,
- color: '#4476FF'.color,
- fontWeight: FontWeight.w500),
- )
- ],
- ),
- ),
- ),
- SizedBox(width: 12.w)
- ],
- ),
- ),
- );
- }
|