Hibok
Du kan inte välja fler än 25 ämnen Ämnen måste starta med en bokstav eller siffra, kan innehålla bindestreck ('-') och vara max 35 tecken långa.
 
 
 
 
 
 

40 rader
1.2 KiB

  1. import 'package:chat/data/constants.dart';
  2. import 'package:chat/models/ChatMsg.dart';
  3. import 'package:chat/utils/msgHandler.dart';
  4. import 'package:flutter/material.dart';
  5. class SendMsgState extends StatefulWidget {
  6. final int sessionId;
  7. final int time;
  8. SendMsgState({this.sessionId,this.time});
  9. @override
  10. _SendMsgStateState createState() => _SendMsgStateState();
  11. }
  12. class _SendMsgStateState extends State<SendMsgState> {
  13. @override
  14. Widget build(BuildContext context) {
  15. var sendCache = MsgHandler.sendCache;
  16. for (var msg in sendCache) {
  17. if (msg.sessionId == widget.sessionId &&
  18. msg.time == widget.time) {
  19. if (msg.state == MsgState.SendingFailed) {
  20. return Padding(
  21. padding: EdgeInsets.only(right: 5),
  22. child: Icon(Icons.error_outline,
  23. size: 12, color: Colors.red));
  24. } else if (msg.state <= MsgState.Sending) {
  25. return Padding(
  26. padding: EdgeInsets.only(right: 5),
  27. child: Icon(
  28. IconData(0xe657, fontFamily: Constants.IconFontFamily),
  29. size: 12,
  30. color: Color(0xFFc0c0c0)));
  31. }
  32. }
  33. }
  34. return SizedBox(width: 0);
  35. }
  36. }