如何在 Flutter 中通过 PageView 导航?
How to navigate through PageView in Flutter?
我试图通过将 PageView 包裹在 GestureDetector 周围来使它后面的小部件可点击,但它不起作用。
还有其他方法吗?
我的代码:
new GestureDetector(
behavior: HitTestBehavior.translucent,
child: new PageView(
controller: _pageController,
children: _buildForegroundPages(),
),
),
您需要将 PageView
中的每一页都包裹在 GestureDetector
中,就像这样。
PageView(
children: [
//Page1
GestureDetector(
onTap: () {
print("Click page1");
Navigator.of(context).push(MaterialPageRoute(
builder: (context) => NewPage()
));
},
child: Container(
color: Colors.red,
child: Center(
child: Text("text 1"),
),
),
),
//Page2
GestureDetector(
onTap: () {
print("Click page2");
},
child: Container(
color: Colors.blue,
child: Center(
child: Text("text 1"),
),
)),
//Page3
GestureDetector(
onTap: () {
print("Click page3");
},
child: Container(
color: Colors.green,
child: Center(
child: Text("text 1"),
),
)),
],
);
我试图通过将 PageView 包裹在 GestureDetector 周围来使它后面的小部件可点击,但它不起作用。
还有其他方法吗?
我的代码:
new GestureDetector(
behavior: HitTestBehavior.translucent,
child: new PageView(
controller: _pageController,
children: _buildForegroundPages(),
),
),
您需要将 PageView
中的每一页都包裹在 GestureDetector
中,就像这样。
PageView(
children: [
//Page1
GestureDetector(
onTap: () {
print("Click page1");
Navigator.of(context).push(MaterialPageRoute(
builder: (context) => NewPage()
));
},
child: Container(
color: Colors.red,
child: Center(
child: Text("text 1"),
),
),
),
//Page2
GestureDetector(
onTap: () {
print("Click page2");
},
child: Container(
color: Colors.blue,
child: Center(
child: Text("text 1"),
),
)),
//Page3
GestureDetector(
onTap: () {
print("Click page3");
},
child: Container(
color: Colors.green,
child: Center(
child: Text("text 1"),
),
)),
],
);