如何在可重用的widget类中实现GestureDetector?

问题描述 投票:-2回答:2

我成功地制作了一个可重用的有状态的widget并添加了文本,但不知道如何制作可重用的手势检测器。

class HomeScreen extends StatefulWidget {
  final String collectionName;

  HomeScreen(this.collectionName);

  @override
  _HomeScreenState createState() => _HomeScreenState();
}

Text(widget.collectionName)

如何使用手势检测器,如 文本 ????

flutter flutter-layout reusability code-reuse gesturedetector
2个回答
1
投票

我想你要做的是将GestureDetector添加到你的文本中,并通过HomeScreen传递函数。如果这就是你要找的东西,那么

class HomeScreen extends StatefulWidget {
  final String collectionName;
  final VoidCallBack onTap;

  HomeScreen(this.collectionName,this.onTap);

  @override
 _HomeScreenState createState() => _HomeScreenState();
}

您的文本小部件将更新为

GestureDetector(
  onTap:widget.onTap,
  child:Text(widget.collectionName)
);

0
投票

你可以这样做的例子... ...

做这个...

Widget gestureDetectorforText(dynamic theText){
  return GestureDetector(
    onTap: your function here..
    child: Text(theText)
  );
 }

使用该代码意味着你需要将你的widget.collectionName传入...

所以每当你调用widget的手势检测器()

你把widget.collection名称传入,就像这样。

gesturedetector(widget.collectionName);

© www.soinside.com 2019 - 2024. All rights reserved.