页面精简

This commit is contained in:
2022-10-31 10:42:17 +08:00
parent bc98924548
commit 52d775dd78
5 changed files with 75 additions and 84 deletions

View File

@@ -53,6 +53,12 @@ class TimFriendService extends GetxService {
), ),
]; ];
@override
void onInit() async {
super.onInit();
await fetchList();
}
Future<void> fetchList() async { Future<void> fetchList() async {
var result = await friendshipManager.getFriendList(); var result = await friendshipManager.getFriendList();
if (result.code == 0) { if (result.code == 0) {

View File

@@ -9,20 +9,9 @@ import 'package:chat/widgets/custom_avatar.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:get/get.dart'; import 'package:get/get.dart';
class ContactPage extends StatefulWidget { class ContactPage extends StatelessWidget {
const ContactPage({Key? key}) : super(key: key); const ContactPage({Key? key}) : super(key: key);
@override
State<ContactPage> createState() => _ContactPageState();
}
class _ContactPageState extends State<ContactPage> {
@override
void initState() {
super.initState();
TimFriendService.to.fetchList();
}
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
return Scaffold( return Scaffold(

View File

@@ -8,33 +8,33 @@ import 'package:flutter/material.dart';
import 'package:flutter_easyrefresh/easy_refresh.dart'; import 'package:flutter_easyrefresh/easy_refresh.dart';
import 'package:get/get.dart'; import 'package:get/get.dart';
class MomentsPage extends StatelessWidget { class MomentsPage extends GetView<MomentController> {
const MomentsPage({Key? key}) : super(key: key); const MomentsPage({Key? key}) : super(key: key);
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
final ctrl = MomentController.to;
return Scaffold( return Scaffold(
body: Padding( body: Padding(
padding: EdgeInsets.only( padding: EdgeInsets.only(
bottom: MediaQuery.of(context).viewPadding.bottom, bottom: MediaQuery.of(context).viewPadding.bottom,
), ),
child: EasyRefresh.custom( child: EasyRefresh.custom(
scrollController: ctrl.scrollController, scrollController: controller.scrollController,
controller: ctrl.refreshController, controller: controller.refreshController,
header: LinkHeader( header: LinkHeader(
ctrl.headerNotifier, controller.headerNotifier,
extent: 70.0, extent: 70.0,
triggerDistance: 70.0, triggerDistance: 70.0,
completeDuration: const Duration(milliseconds: 500), completeDuration: const Duration(milliseconds: 500),
), ),
footer: CustomEasyRefresh.footer, footer: CustomEasyRefresh.footer,
onRefresh: () => ctrl.refreshList(), onRefresh: () => controller.refreshList(),
onLoad: () => ctrl.loadMoreList(), onLoad: () => controller.loadMoreList(),
slivers: [ slivers: [
MomentHeader( MomentHeader(
linkNotifier: ctrl.headerNotifier, linkNotifier: controller.headerNotifier,
onTitleDoubleTap: () { onTitleDoubleTap: () {
ctrl.scrollController.animateTo( controller.scrollController.animateTo(
0, 0,
duration: const Duration(milliseconds: 300), duration: const Duration(milliseconds: 300),
curve: Curves.fastOutSlowIn, curve: Curves.fastOutSlowIn,
@@ -42,7 +42,7 @@ class MomentsPage extends StatelessWidget {
}, },
), ),
Obx(() { Obx(() {
final momentList = ctrl.momentData.value?.data ?? []; final momentList = controller.momentData.value?.data ?? [];
if (momentList.isEmpty) { if (momentList.isEmpty) {
return SliverFillRemaining( return SliverFillRemaining(
child: CustomEasyRefresh.empty(text: '暂无动态内容'), child: CustomEasyRefresh.empty(text: '暂无动态内容'),

View File

@@ -5,18 +5,12 @@ import 'package:chat/views/user/index/widgets/user_top_bar.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:get/get.dart'; import 'package:get/get.dart';
class UserPage extends StatefulWidget { class UserPage extends StatelessWidget {
const UserPage({Key? key}) : super(key: key); const UserPage({Key? key}) : super(key: key);
@override
_UserPageState createState() => _UserPageState();
}
class _UserPageState extends State<UserPage> {
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
return SafeArea( return Scaffold(
child: Scaffold(
body: Column( body: Column(
children: [ children: [
const UserTopBar(), const UserTopBar(),
@@ -67,7 +61,6 @@ class _UserPageState extends State<UserPage> {
), ),
], ],
), ),
),
); );
} }
} }

View File

@@ -11,17 +11,20 @@ import 'package:get/get.dart';
class UserTopBar extends StatelessWidget { class UserTopBar extends StatelessWidget {
const UserTopBar({Key? key}) : super(key: key); const UserTopBar({Key? key}) : super(key: key);
final double paddingTop = 96;
final double avatarHeight = 64;
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
return Container( return Container(
color: AppColors.white, color: AppColors.white,
padding: const EdgeInsets.only( padding: EdgeInsets.only(
left: 24, left: 24,
top: 48, top: paddingTop,
right: 24, right: 24,
bottom: 24, bottom: 24,
), ),
height: 64 + 48 + 24, // height: avatarHeight + paddingTop + 24,
child: GetX<AuthService>(builder: (_) { child: GetX<AuthService>(builder: (_) {
return Row( return Row(
crossAxisAlignment: CrossAxisAlignment.end, crossAxisAlignment: CrossAxisAlignment.end,
@@ -32,7 +35,7 @@ class UserTopBar extends StatelessWidget {
}, },
child: CustomAvatar( child: CustomAvatar(
_.userInfo.value.avatar, _.userInfo.value.avatar,
size: 64, size: avatarHeight,
), ),
), ),
const SizedBox(width: 16), const SizedBox(width: 16),