Я делаю калькулятор для карточной игры, и мне нужно получить сумму переменных на всех вкладках, чтобы получить общий балл , но здесь на вкладках счет повторно инициализируется на каждой вкладке. Есть ли способ передать переменные между вкладками и все еще в состоянии их редактировать?
это фрагмент кода вкладок
class TrexTabs extends StatefulWidget {
TrexTabs(this.value1, this.value2, this.value3, this.value4, this.boolValue);
final value1;
final value2;
final value3;
final value4;
final boolValue;
int firstTotal ;
int secondTotal ;
int thirdTotal ;
int fourthTotal ;
@override
_TrexTabsState createState() => _TrexTabsState();
}
class _TrexTabsState extends State<TrexTabs> {
@override
Widget build(BuildContext context) {
widget.firstTotal = widget.firstQueens + widget.firstKing + widget.firstTrex + widget.firstCollections + widget.firstDiamonds;
widget.secondTotal = widget.secondQueens + widget.secondKing + widget.secondTrex + widget.secondCollections + widget.secondDiamonds;
widget.thirdTotal = widget.thirdQueens + widget.thirdKing + widget.thirdTrex + widget.thirdCollections + widget.thirdDiamonds;
widget.fourthTotal = widget.fourthQueens + widget.fourthKing + widget.fourthTrex + widget.fourthCollections + widget.fourthDiamonds;
Это фрагмент для объявления вкладок:
TabBar(
controller: tabController,
indicatorColor: kSecondaryLight,
labelColor: Colors.black,
indicatorSize: TabBarIndicatorSize.tab,
unselectedLabelColor: Colors.grey.withOpacity(0.6),
isScrollable: false,
tabs: <Widget>[
Tab(
child: Container(
child: Center(
child: Text(
//Triple quotes to get the new line exactly as written
'''1st Kingdom
المملكة الأولى''',
textAlign: TextAlign.center,
style: TextStyle(
//line height
height: 0.55,
fontSize: 11,
fontWeight: FontWeight.bold
),
),
),
),
),
Container(
height: 500,
child: TabBarView(
physics: NeverScrollableScrollPhysics(),
controller: tabController,
children: <Widget>[
new TrexTabs(widget.value1,widget.value2,widget.value3,widget.value4,widget.boolValue),
new TrexTabs(widget.value1,widget.value2,widget.value3,widget.value4,widget.boolValue),
new TrexTabs(widget.value1,widget.value2,widget.value3,widget.value4,widget.boolValue),
new TrexTabs(widget.value1,widget.value2,widget.value3,widget.value4,widget.boolValue),
],
),
),