import 'package:flutter/material.dart'; import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart' as prefix0; import 'package:wanna_battle/model/PlayerInfo.dart'; import '../model/HouseInfo.dart'; import '../model/GameInfo.dart'; import '../pages/RoomInfo.dart'; import 'package:cached_network_image/cached_network_image.dart'; import 'dart:ui'; class HouseItem extends StatelessWidget { HouseItem(this.houseInfo, this.gameInfo, {this.playerInfo = null}); HouseInfo houseInfo; GameInfo gameInfo; PlayerInfo playerInfo; List imageList = ['images/img_fangjian_hong.png', 'images/img_fangjian_huise.png']; @override Widget build(BuildContext context) { return Container( margin: EdgeInsets.only(bottom: 10, left: 15, right: 15), decoration: BoxDecoration(color: Colors.white, borderRadius: BorderRadius.all(Radius.circular(4))), child: Material( color: Colors.transparent, child: InkWell( onTap: () { Navigator.push(context, CupertinoPageRoute(builder: (context) => RoomInfo(roomId: houseInfo.id.toString()))); }, child: Container( height: 80, decoration: BoxDecoration( image: DecorationImage( image: AssetImage(imageList[houseInfo.statusFlag == 0 ? 0 : 1]), fit: BoxFit.fitHeight, alignment: Alignment.bottomRight), ), padding: EdgeInsets.all(10), child: Row( children: [ ClipRRect( borderRadius: BorderRadius.circular(4.0), child: CachedNetworkImage( imageUrl: gameInfo.icon, width: 60, height: 60, fit: BoxFit.cover, ), ), Container( width: 10, ), Expanded( flex: 1, child: Column( mainAxisAlignment: MainAxisAlignment.center, crossAxisAlignment: CrossAxisAlignment.start, children: [ Text(houseInfo.houseName, overflow: TextOverflow.ellipsis, style: TextStyle(fontSize: 16, color: Colors.black)), Container( height: 4, ), Text('' + (houseInfo.scoreType == 0 ? '评分' : '吃鸡') + '模式', overflow: TextOverflow.ellipsis, style: TextStyle(fontSize: 13, color: Color(0xFF999999))) ], ), ), Column( mainAxisAlignment: MainAxisAlignment.center, children: [ _topWidget(playerInfo), Row( children: [ Text( '${houseInfo.playerNumber!=null?houseInfo.playerNumber:0}/${houseInfo.maxNumber}', style: TextStyle(color: Colors.white, fontSize: 14), ) ], ) ], ) ], ), )))); } Widget _topWidget(PlayerInfo playerInfo) { if (playerInfo == null) { return Image.asset('images/join.png'); } else { if (playerInfo.ranking == 1) { return Text( '吃鸡', style: prefix0.TextStyle(color: Color(0xFFD4504B), fontSize: 14, fontWeight: FontWeight.w600) ); } else { return Text('未吃鸡', style: prefix0.TextStyle(color: Color(0xFF5C5C5C), fontSize: 14, fontWeight: FontWeight.w600)); } } // return Container(); } }