From 3eac96e2d2880f374a80d8020edcb8e9d2ce144d Mon Sep 17 00:00:00 2001 From: zhangmeng1334717033 Date: Tue, 9 Jun 2020 17:35:43 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E7=99=BB=E9=99=86=E9=A1=B5?= =?UTF-8?q?=E9=9D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- assets/images/ic_password.png | Bin 0 -> 3844 bytes assets/images/ic_username.png | Bin 0 -> 9104 bytes assets/images/jspang.png | Bin 0 -> 79346 bytes lib/chatting_api.dart | 28 ++++ lib/chatting_data_page.dart | 22 +-- lib/chatting_details_page.dart | 1 - lib/chatting_message_page.dart | 84 +++++++---- lib/loading_page.dart | 4 +- lib/login_page.dart | 245 +++++++++++++++++++++++++++++++++ lib/main.dart | 6 +- pubspec.lock | 21 +++ pubspec.yaml | 6 + 12 files changed, 378 insertions(+), 39 deletions(-) create mode 100644 assets/images/ic_password.png create mode 100644 assets/images/ic_username.png create mode 100644 assets/images/jspang.png create mode 100644 lib/chatting_api.dart create mode 100644 lib/login_page.dart diff --git a/assets/images/ic_password.png b/assets/images/ic_password.png new file mode 100644 index 0000000000000000000000000000000000000000..3d5abb304b58288eee322120c44916478c77b59b GIT binary patch literal 3844 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 EUx=a1@Bjb+ literal 0 HcmV?d00001 diff --git a/assets/images/ic_username.png b/assets/images/ic_username.png new file mode 100644 index 0000000000000000000000000000000000000000..be15d41451ab3f31f145d704c0b11df5a1c08b9e GIT binary patch literal 9104 zcmbVS^;ZH>0IfM5)h)s*!9jl=(IV9>w5+N1^z06+mq zC3%A&tK$N~g@{Fip&q|Ho$uLcV})wuTjY7mJX%U*BYcV~US$Seb5Ao_=)Qk@%Bn}e zrIn{vt`gvjG@#Sv&(we`_P(ms;Jmp9&H={_>Bn=|@l;%7ObNVaW@+pVXK7x7$e&R7y4UcOGVUOjdas)kcX;-Um+Dk5deTY{AH#EqWoB+GKFw|-D zubPmg(wx|}N_bdn8uc46S4SXbDq&>q zcmBu-*8Rt9wCEf!&p4#-ln1t=KI3d~(6eQy;%1HGrZXL=QC0Y+A_VfuNZ9!#r(f}K5a1s+Oo??DYfs;JUyArQG2F6lmE*t zU?b3reZM)Q+tz92{ga6R4;FE_xk%b%`V|F|uLL~dhKI)^&x!7VtNVz9zjd0IvKLMAmc(stoQXZ;6 zx<@j7JHLIaW*ew@#uYD8obMHV1cT8BYXOf>w@W>yGf!ZaJwDK06L2T?^r=yZcv?L2 zUKiO<;D@^=yM#@=q9|L01r<*vaoMrxS|0(9-AJ`Ts=};mL4N-MVxj9fY|J@V?ifR4 zmEG_cki_g?#97?V9=_$@G}r_O^O&p6x6qKMX#(jnKVZ~;e>5_l6C#z}54u~N*I4(C zD}|*dxc$75u%H)gU9`h}@Pc%FnTTrGNra-f_or_u;nk%ga7*!$(9_HSW@Jx+?Qm)x^$8HZ(Aue>S19!~RfNsKB{^2?ddD;wx~DtIRS*E?=Gde*ML zc_CY^t7TY%o|+c0tg=z&xTEopYg&h(s6(oV5I2u#LtrklWi@lQ)^q2u$8hGmu+b9+ z*vl-OhBl<@A|f|?;+ur`?@pLbht{N~Ryf45AZm2)Kdj5_8FG~J#p7T0osVTTo^yy3 zvaGOj9OZRJ+qt`MF`<%rDVee5)E*x8bmyb5=L^XC3ad42;PMXR z!;Z@MjPE*v=;mR#>U@oAj^m?LTVgqOi{zBn4XBO8`QwJvqCxV2uwPT;R2lz~X{8!j zrl08s}7Hn+Bjg9cc@PM##P@u!>-P4Z3{^#=8~Z z8D6`U?(1~&1hy&KRc+S7P`C$l3ZC8B$5wzGA>V54m&EBr1Nj0C^LvI3C&&zrmAP_N#V{y?^)FJ&_Khnn58Y5Nz4d`;UyYQ})n9Z_;pa)uk~Y*C_Z zaaelwFS6IYz2{1#uERG^)7rmRq$@4Mpg&t4X| ze)p)CNacO|y|EOP){YPBXVYrElV)W6F9z64qpRFIRvEu?3J!k%Mj}8gz zh2$EVIr3a}_WNqJgY;}v1V5G{OlCr#oS2Lv)atK(3G26l3YUyx`)i~7ziZO@?45)s z)0g(1-~le7SYmTtE!=WsQ@!Z(^y#}yG@(X~=~skWHIB|6ncE9QV-FnTKIHMz80i7G zao{4eSkWo`x`z8D!hN-if`iz+y22;xCkUIb=N5rWb%=snKUciXz`}=&; zBP6UCj0#3mD_38s(*RnhsppP#J%O0^#P?qP?_~_ctVk%>iW5xMT7^o$^~{Esx-SI2b9

i}%if~a^>3L{DuoP;Wcay5^LrMUoRJ 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 literal 0 HcmV?d00001 diff --git a/assets/images/jspang.png b/assets/images/jspang.png new file mode 100644 index 0000000000000000000000000000000000000000..09473b924c509a2e30bcd6abfe53ec29c33b7ec4 GIT binary patch literal 79346 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 literal 0 HcmV?d00001 diff --git a/lib/chatting_api.dart b/lib/chatting_api.dart new file mode 100644 index 0000000..272304a --- /dev/null +++ b/lib/chatting_api.dart @@ -0,0 +1,28 @@ +import 'package:flutter/material.dart'; +import 'package:dio/dio.dart'; + +Dio dio = new Dio(); + +class ChattingApi{ + + + + + //获取通讯录列表 + getContactList(String id) async { + var result = await dio.get('http://www.liulongbin.top:3005/api/v2/movie/subject/$id'); + return result.data; + } + + //获取聊天列表 + getChattingList(String id) async { + var result = await dio.get(''); + return result.data; + } + + //获取当前用户信息 + getCurrentUserInfo(String id) async { + var result = await dio.get(''); + return result.data; + } +} \ No newline at end of file diff --git a/lib/chatting_data_page.dart b/lib/chatting_data_page.dart index f4743ef..9ef60ca 100644 --- a/lib/chatting_data_page.dart +++ b/lib/chatting_data_page.dart @@ -8,8 +8,11 @@ enum MessageType { SYSTEM, PUBLIC, CHAT, GROUP } // 聊天数据 class MessageData { - //id - int id; + //发送者的id + int sendId; + + //接受者的id + int toId; //头像 String avatar; @@ -26,13 +29,16 @@ class MessageData { //消息类型 MessageType type; - MessageData(this.avatar, this.title, this.subTitle, this.time, this.type); + MessageData(this.sendId, this.toId, this.avatar, this.title, this.subTitle, + this.time, this.type); + + } List messageData = [ - new MessageData("http://blogimages.jspang.com/blogtouxiang1.jpg", "张三", "一哥", new DateTime.now(), MessageType.CHAT), - new MessageData("http://blogimages.jspang.com/blogtouxiang1.jpg", "李四", "一哥", new DateTime.now(), MessageType.CHAT), - new MessageData("http://blogimages.jspang.com/blogtouxiang1.jpg", "王麻子", "一哥", new DateTime.now(), MessageType.CHAT), - new MessageData("http://blogimages.jspang.com/blogtouxiang1.jpg", "王五", "一哥", new DateTime.now(), MessageType.CHAT), - new MessageData("http://blogimages.jspang.com/blogtouxiang1.jpg", "赵柳", "一哥", new DateTime.now(), MessageType.CHAT), + new MessageData(12,1,"http://blogimages.jspang.com/blogtouxiang1.jpg", "张三", "一哥", new DateTime.now(), MessageType.CHAT), + new MessageData(12,3,"http://blogimages.jspang.com/blogtouxiang1.jpg", "李四", "一哥", new DateTime.now(), MessageType.CHAT), + new MessageData(1,12,"http://blogimages.jspang.com/blogtouxiang1.jpg", "王麻子", "一哥", new DateTime.now(), MessageType.CHAT), + new MessageData(3,12,"http://blogimages.jspang.com/blogtouxiang1.jpg", "王五", "一哥", new DateTime.now(), MessageType.CHAT), + new MessageData(1,3,"http://blogimages.jspang.com/blogtouxiang1.jpg", "赵柳", "一哥", new DateTime.now(), MessageType.CHAT), ]; \ No newline at end of file diff --git a/lib/chatting_details_page.dart b/lib/chatting_details_page.dart index 21ad5e8..903a074 100644 --- a/lib/chatting_details_page.dart +++ b/lib/chatting_details_page.dart @@ -106,7 +106,6 @@ class _ChattingDetailsState extends State with TickerProviderSt onPressed: _isComposing ? () => _handleSubmitted(_textEditingController.text) : null ), ) - ], ), ), diff --git a/lib/chatting_message_page.dart b/lib/chatting_message_page.dart index 41d0062..9ba4466 100644 --- a/lib/chatting_message_page.dart +++ b/lib/chatting_message_page.dart @@ -1,3 +1,4 @@ +import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; import 'package:chatting/chatting_data_page.dart'; @@ -22,15 +23,9 @@ class ChatMessagePage extends StatefulWidget { class _ChatMessagePageState extends State { - @override Widget build(BuildContext context) { - if(widget.messageData.title==null){ - print("11"); - - } - return SizeTransition( sizeFactor: CurvedAnimation( parent: widget.animationController, @@ -42,29 +37,62 @@ class _ChatMessagePageState extends State { } Widget cellContaint (BuildContext context){ + var sendId = widget.messageData.sendId; + var toId = widget.messageData.toId; + var currentId = 12; + if(sendId == currentId){ + print(sendId); + return Container( + padding:const EdgeInsets.fromLTRB(300.0,0.0,10,0.0), + margin: const EdgeInsets.symmetric(vertical: 10.0), + child: Row( + + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + new Container( + margin: const EdgeInsets.only(right: 16.0), + child: new CircleAvatar(child: new Text(widget.messageData.title[0])), + ), + new Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + new Text(widget.messageData.title, style: Theme.of(context).textTheme.subhead), + new Container( + margin: const EdgeInsets.only(top: 5.0), + child: new Text(widget.text, textAlign: TextAlign.right,), + ) + ] + ) + ], + ), + ); + }else{ + return Container( + padding:const EdgeInsets.fromLTRB(0.0,0.0,0.0,0.0), + margin: const EdgeInsets.symmetric(vertical: 10.0), + child: Row( + + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + new Container( + margin: const EdgeInsets.only(right: 16.0), + child: new CircleAvatar(child: new Text(widget.messageData.title[0])), + ), + new Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + new Text(widget.messageData.title, style: Theme.of(context).textTheme.subhead), + new Container( + margin: const EdgeInsets.only(top: 5.0), + child: new Text(widget.text, textAlign: TextAlign.right,), + ) + ] + ) + ], + ), + ); + } - return Container( - margin: const EdgeInsets.symmetric(vertical: 10.0), - child: Row( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - new Container( - margin: const EdgeInsets.only(right: 16.0), - child: new CircleAvatar(child: new Text(widget.messageData.title[0])), - ), - new Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - new Text(widget.messageData.title, style: Theme.of(context).textTheme.subhead), - new Container( - margin: const EdgeInsets.only(top: 5.0), - child: new Text(widget.text), - ) - ] - ) - ], - ), - ); } } diff --git a/lib/loading_page.dart b/lib/loading_page.dart index 0c40c61..f1bcb47 100644 --- a/lib/loading_page.dart +++ b/lib/loading_page.dart @@ -16,7 +16,9 @@ class _LoadingPageState extends State { //加载页默认停留三秒 Future.delayed(Duration(seconds: 3),(){ print("仿微信app页面正在加载中"); - Navigator.of(context).pushReplacementNamed("app"); + //判断是否登录,如果没有登陆则跳转至登录页,如果登录则跳转至聊天页 + Navigator.of(context).pushReplacementNamed("login"); + //Navigator.of(context).pushReplacementNamed("app"); }); } diff --git a/lib/login_page.dart b/lib/login_page.dart new file mode 100644 index 0000000..87cdf53 --- /dev/null +++ b/lib/login_page.dart @@ -0,0 +1,245 @@ +import 'package:date_format/date_format.dart'; +import 'package:flutter/material.dart'; +import 'package:fluttertoast/fluttertoast.dart'; + +class LoginPag extends StatefulWidget { + @override + _LoginPagState createState() => _LoginPagState(); +} + +class _LoginPagState extends State { + TextEditingController _pwdEditController; + TextEditingController _userNameEditController; + + final FocusNode _userNameFocusNode = FocusNode(); + final FocusNode _pwdFocusNode = FocusNode(); + + @override + void initState() { + super.initState(); + + _pwdEditController = TextEditingController(); + _userNameEditController = TextEditingController(); + + _pwdEditController.addListener(() => setState(() => {})); + _userNameEditController.addListener(() => setState(() => {})); + } + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar( + title: Text(''), + centerTitle: true, + backgroundColor: Colors.blue[400], + elevation: 0, + ), + body: SingleChildScrollView( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + buildTopWidget(context), + SizedBox( + height: 80, + ), + buildEditWidget(context), + buildLoginButton() + ], + ), + ), + ); + } + + /// 头部 + Widget buildTopWidget(BuildContext context) { + double height = 200.0; + double width = MediaQuery.of(context).size.width; + print(width); + return Container( + width: width, + height: height, + color: Colors.blue[400], + child: Stack( + overflow: Overflow.visible, // 超出部分显示 + children: [ + Positioned( + left: (width - 90) / 2.0, + top: height - 45, + child: Container( + width: 90.0, + height: 90.0, + decoration: BoxDecoration( + ///阴影 + boxShadow: [ + BoxShadow(color: Theme.of(context).cardColor, blurRadius: 4.0) + ], + ///形状 + shape: BoxShape.circle, + ///图片 + image: DecorationImage( + fit: BoxFit.cover, + image: NetworkImage( + 'https://upload.jianshu.io/users/upload_avatars/2416132/dd23e2841509.jpg?imageMogr2/auto-orient/strip|imageView2/1/w/96/h/96/format/webp'), + ), + ), + ), + ) + ], + ), + ); + } + + Widget buildEditWidget(BuildContext context) { + return Container( + margin: EdgeInsets.only(left: 15, right: 15), + child: Column( + children: [ + buildLoginNameTextField(), + SizedBox(height: 20.0), + buildPwdTextField(), + ], + ), + ); + } + + Widget buildLoginNameTextField() { + return Container( + height: 40, + decoration: BoxDecoration( + color: Colors.grey[200], + borderRadius: BorderRadius.all(Radius.circular(20.0)), + ), + child: Stack( + children: [ + Positioned( + left: 16, + top: 11, + width: 18, + height: 18, + child: Image.asset('assets/images/ic_username.png'), + ), + Positioned( + left: 45, + top: 10, + bottom: 10, + width: 1, + child: Container( + color: Colors.black, + ), + ), + Positioned( + left: 55, + right: 10, + top: 10, + height: 30, + child: TextField( + controller: _userNameEditController, + focusNode: _userNameFocusNode, + decoration: InputDecoration( + hintText: "请输入用户名", + border: InputBorder.none, + ), + style: TextStyle(fontSize: 14), + ), + ) + ], + ), + ); + } + + Widget buildPwdTextField() { + return Container( + height: 40, + decoration: BoxDecoration( + color: Colors.grey[200], + borderRadius: BorderRadius.all(Radius.circular(20.0)), + ), + child: Stack( + children: [ + Positioned( + left: 16, + top: 11, + width: 18, + height: 18, + child: Image.asset('assets/images/ic_password.png'), + ), + Positioned( + left: 45, + top: 10, + bottom: 10, + width: 1, + child: Container( + color: Colors.black, + ), + ), + Positioned( + left: 55, + right: 10, + top: 10, + height: 30, + child: TextField( + controller: _pwdEditController, + focusNode: _pwdFocusNode, + decoration: InputDecoration( + hintText: "请输入密码", + border: InputBorder.none, + ), + style: TextStyle(fontSize: 14), + obscureText: true, + + /// 设置密码 + ), + ) + ], + )); + } + + Widget buildLoginButton() { + return Container( + margin: EdgeInsets.only(top: 40, left: 10, right: 10), + padding: EdgeInsets.all(0), + width: MediaQuery.of(context).size.width - 20, + height: 40, + child: RaisedButton( + onPressed: () { + if (checkInput()) { + Fluttertoast.showToast( + msg: "登录成功", + gravity: ToastGravity.CENTER, + timeInSecForIos: 2, + textColor: Colors.white, + fontSize: 14.0); + } + }, + child: Text("登录"), + color: Colors.blue[400], + textColor: Colors.white, + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.all(Radius.circular(20.0)), + ), + ), + ); + } + + bool checkInput() { + if (_userNameEditController.text.length == 0) { + Fluttertoast.showToast( + msg: "请输入用户名", + gravity: ToastGravity.CENTER, + timeInSecForIos: 2, + textColor: Colors.white, + fontSize: 14.0); + + return false; + } else if (_pwdEditController.text.length == 0) { + Fluttertoast.showToast( + msg: "请输入密码", + gravity: ToastGravity.CENTER, + timeInSecForIos: 2, + textColor: Colors.white, + fontSize: 14.0); + return false; + } + return true; + } +} diff --git a/lib/main.dart b/lib/main.dart index 6a75f46..2107b9b 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -1,6 +1,7 @@ import 'package:flutter/material.dart'; import 'package:chatting/loading_page.dart'; import 'package:chatting/app_page.dart'; +import 'package:chatting/login_page.dart'; void main(){ return runApp(MyApp()); @@ -18,7 +19,10 @@ class MyApp extends StatelessWidget { routes: { 'app' : (BuildContext context){ return new App(); - } + }, + 'login' : (BuildContext context){ + return new LoginPag(); + }, }, //指定首页,默认为加载页 home: LoadingPage(), diff --git a/pubspec.lock b/pubspec.lock index c0add7d..ad06482 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -50,6 +50,13 @@ packages: url: "https://pub.flutter-io.cn" source: hosted version: "2.1.1" + cookie_jar: + dependency: transitive + description: + name: cookie_jar + url: "https://pub.flutter-io.cn" + source: hosted + version: "0.0.8" crypto: dependency: transitive description: @@ -71,6 +78,13 @@ packages: url: "https://pub.flutter-io.cn" source: hosted version: "1.0.8" + dio: + dependency: "direct main" + description: + name: dio + url: "https://pub.flutter-io.cn" + source: hosted + version: "1.0.17" flutter: dependency: "direct main" description: flutter @@ -88,6 +102,13 @@ packages: url: "https://pub.flutter-io.cn" source: hosted version: "0.3.11" + fluttertoast: + dependency: "direct main" + description: + name: fluttertoast + url: "https://pub.flutter-io.cn" + source: hosted + version: "3.1.3" image: dependency: transitive description: diff --git a/pubspec.yaml b/pubspec.yaml index 60ddc19..45e3b41 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -30,6 +30,9 @@ dependencies: cupertino_icons: ^0.1.3 flutter_webview_plugin: ^0.3.4 date_format: ^1.0.4 + dio: ^1.0.9 + fluttertoast: ^3.0.3 + dev_dependencies: flutter_test: sdk: flutter @@ -68,7 +71,10 @@ flutter: - assets/images/ic_new_friend.png - assets/images/ic_label.png - assets/images/ic_group.png + - assets/images/ic_username.png + - assets/images/ic_password.png - assets/images/icon_right.png + - assets/images/jspang.png fonts: - family: appIconFonts