import 'dart:async';
import 'dart:convert';
import 'dart:math';
import 'dart:ui';
import 'package:cached_network_image/cached_network_image.dart';
import 'package:cloud_firestore/cloud_firestore.dart';
import 'package:firebase_auth/firebase_auth.dart';
import 'package:flutter/material.dart';
import 'package:flutter_spinkit/flutter_spinkit.dart';
import 'package:flutter_svg/flutter_svg.dart';
import 'package:fluttertoast/fluttertoast.dart';
import 'package:jellytalk2/jelly/jellyMain.dart';
import 'package:jellytalk2/jelly/jellyparty.dart';
import 'package:shared_preferences/shared_preferences.dart';
import 'package:provider/provider.dart';
import 'package:ink_page_indicator/ink_page_indicator.dart';
import '../main.dart';
class JellyHome extends StatefulWidget {
const JellyHome({Key? key}) : super(key: key);
@override
_JellyHomeState createState() => _JellyHomeState();
}
class _JellyHomeState extends State<JellyHome> {
var iconSize = 43.0;
var isClicked1=true;
var isClicked2=false;
var isClicked3=false;
var isClicked4=false;
int _seletedIndex=0;
final _scaffoldKey = new GlobalKey<ScaffoldState>();
@override
void initState() {
FirebaseFirestore.instance.collection('users').doc(FirebaseAuth.instance.currentUser?.uid).update({'최근접속시간':DateTime.now()});
super.initState();
WidgetsBinding.instance?.addPostFrameCallback(
(_) => Provider.of<JellyHomeProvider>(context,listen: false).define());
isClicked1=true;
isClicked2=false;
isClicked3=false;
isClicked4=false;
_seletedIndex=0;
}
@override
void dispose() {
super.dispose();
Provider.of<JellyHomeProvider>(context,listen: false).evict();
}
@override
Widget build(BuildContext context) {
final providerLf = Provider.of<JellyHomeProvider>(context,listen: false);
final provider = Provider.of<JellyHomeProvider>(context);
return Scaffold(
key: _scaffoldKey,
extendBody: true,
appBar: AppBar(
centerTitle: false,
elevation: 0,
backgroundColor: Colors.white,
leadingWidth: 100,
leading: Padding(
padding: const EdgeInsets.only(left:12,top:13.0),
child: Text(
'젤리톡',
style: TextStyle(
fontSize: 19,
color: Colors.black,
fontWeight: FontWeight.w500),
),
),
actions: [
Column(
mainAxisAlignment: MainAxisAlignment.center,
children: [
Text(
30.toString(),
style: TextStyle(fontSize: 18, color: Colors.black),
),
],
),
Padding(
padding: const EdgeInsets.only(left: 7.0),
child: SvgPicture.asset('assets/images/myJelly.svg'),
)
],
),
body: Center(
child: SingleChildScrollView(
child: Column(
children: [
if(_seletedIndex==0) Container(
height: MediaQuery.of(context).size.height-80,
padding: EdgeInsets.all(0),
color: Colors.white,
child: Container(margin: EdgeInsets.only(top: 7), child: JellyMain())
)
else if (_seletedIndex==1) JellyParty()
else if (_seletedIndex==2) Text('3')
else if (_seletedIndex==3) Text('4')
],
),
),
),
bottomNavigationBar: BottomAppBar(
child: Padding(
padding: const EdgeInsets.only(top: 7.0,bottom: 20),
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceEvenly,
children: [
GestureDetector(
onTap: (){
if(isClicked1==false) {
setState(() {
_seletedIndex=0;
isClicked1=true;
isClicked2=false;
isClicked3=false;
isClicked4=false;
provider.nav1Active.evict();
provider.nav1None.evict();
});
}
},
child: Image(image: isClicked1?provider.nav1Active:provider.nav1None, width: iconSize,)
),
GestureDetector(
onTap: (){
if(isClicked2==false) {
setState(() {
_seletedIndex=1;
isClicked2=true;
isClicked3=false;
isClicked4=false;
isClicked1=false;
provider.nav2Active.evict();
provider.nav2None.evict();
});
}
},
child: Image(image: isClicked2?provider.nav2Active:provider.nav2None, width: iconSize,)
),
GestureDetector(
onTap: (){
if(isClicked3==false) {
setState(() {
_seletedIndex=2;
isClicked3=true;
isClicked4=false;
isClicked1=false;
isClicked2=false;
provider.nav3Active.evict();
provider.nav3None.evict();
});
}
},
child: Image(image: isClicked3?provider.nav3Active:provider.nav3None, width: iconSize,)
),
GestureDetector(
onTap: (){
if(isClicked4==false) {
setState(() {
_seletedIndex=3;
isClicked4=true;
isClicked1=false;
isClicked2=false;
isClicked3=false;
provider.nav4Active.evict();
provider.nav4None.evict();
});
}
},
child: Image(image: isClicked4?provider.nav4Active:provider.nav4None, width: iconSize,)
),
],
),
),
)
);
}
}