如何聆听flutter型流构建器的整数?
我正在将约会屏幕添加到我的应用程序中。我想根据约会屏幕中的进度显示屏幕。我将用户的进度与变量联系在一起。该变量的名称是_PageIndex
。我确定要使用statepage
函数显示的内容。我已经将statepage
授予body
。
但是有一个问题。我不知道如何收听此_PageIndex
。我该怎么做?您是否需要_PageIndex
变量才能连续收听?
代码:
statePage() {
StreamBuilder<int>(
// stream: _pageIndex,
builder: (BuildContext context, AsyncSnapshot<int> snapshot) {
_pageIndex = snapshot.data;
if (_pageIndex == 1) {
return welcomeScreen_1();
} else if (_pageIndex == 2) {
return welcomeScreen_2();
} else if (_pageIndex == 3) {
return welcomeScreen_3();
} else {
return welcomeScreen_1();
}
},
);
}
所有代码:
import 'package:flutter/material.dart';
import 'package:teen_browser/welcome_screens/welcomeScreen1.dart';
import 'package:teen_browser/welcome_screens/welcomeScreen2.dart';
import 'package:teen_browser/welcome_screens/welcomeScreen3.dart';
class welcomeMain extends StatefulWidget {
welcomeMain({Key? key}) : super(key: key);
@override
State<welcomeMain> createState() => _welcomeMainState();
}
int? _pageIndex = 1;
class _welcomeMainState extends State<welcomeMain> {
void initState() {
super.initState();
}
@override
Widget build(BuildContext context) {
return Scaffold(
body: statePage(),
bottomSheet: Row(
mainAxisAlignment: MainAxisAlignment.spaceEvenly,
children: [
Text("example text, not important."),
],
),
);
}
}
statePage() {
StreamBuilder<int>(
// stream: _pageIndex,
builder: (BuildContext context, AsyncSnapshot<int> snapshot) {
_pageIndex = snapshot.data;
if (_pageIndex == 1) {
return welcomeScreen_1();
} else if (_pageIndex == 2) {
return welcomeScreen_2();
} else if (_pageIndex == 3) {
return welcomeScreen_3();
} else {
return welcomeScreen_1();
}
},
);
}
我将在BottomSheet
上放置进度栏。我可以处理这个。只需帮助我如何收听_PageIndex
。事先感谢您的帮助。
I'm adding a dating screen to my app. I want to show the screen according to the progress in the dating screen. I tied the user's progress to a variable. The name of this variable is _pageIndex
. And I determine the content to be displayed with the statePage
function. I have given statePage
to body
.
But there is a problem. I have no clue how to listen for this _pageIndex
. How can I do that? Do you want the _pageIndex
variable to listen continuously?
Codes:
statePage() {
StreamBuilder<int>(
// stream: _pageIndex,
builder: (BuildContext context, AsyncSnapshot<int> snapshot) {
_pageIndex = snapshot.data;
if (_pageIndex == 1) {
return welcomeScreen_1();
} else if (_pageIndex == 2) {
return welcomeScreen_2();
} else if (_pageIndex == 3) {
return welcomeScreen_3();
} else {
return welcomeScreen_1();
}
},
);
}
All codes:
import 'package:flutter/material.dart';
import 'package:teen_browser/welcome_screens/welcomeScreen1.dart';
import 'package:teen_browser/welcome_screens/welcomeScreen2.dart';
import 'package:teen_browser/welcome_screens/welcomeScreen3.dart';
class welcomeMain extends StatefulWidget {
welcomeMain({Key? key}) : super(key: key);
@override
State<welcomeMain> createState() => _welcomeMainState();
}
int? _pageIndex = 1;
class _welcomeMainState extends State<welcomeMain> {
void initState() {
super.initState();
}
@override
Widget build(BuildContext context) {
return Scaffold(
body: statePage(),
bottomSheet: Row(
mainAxisAlignment: MainAxisAlignment.spaceEvenly,
children: [
Text("example text, not important."),
],
),
);
}
}
statePage() {
StreamBuilder<int>(
// stream: _pageIndex,
builder: (BuildContext context, AsyncSnapshot<int> snapshot) {
_pageIndex = snapshot.data;
if (_pageIndex == 1) {
return welcomeScreen_1();
} else if (_pageIndex == 2) {
return welcomeScreen_2();
} else if (_pageIndex == 3) {
return welcomeScreen_3();
} else {
return welcomeScreen_1();
}
},
);
}
I will place a progress bar on the bottomSheet
. I can handle this. Just help me how to listen for _pageIndex
. Thanks in advance for your help.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论