我成功地制作了一个可重用的有状态的widget并添加了文本,但不知道如何制作可重用的手势检测器。
class HomeScreen extends StatefulWidget {
final String collectionName;
HomeScreen(this.collectionName);
@override
_HomeScreenState createState() => _HomeScreenState();
}
Text(widget.collectionName)
如何使用手势检测器,如 文本 ????
我想你要做的是将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)
);
你可以这样做的例子... ...
做这个...
Widget gestureDetectorforText(dynamic theText){
return GestureDetector(
onTap: your function here..
child: Text(theText)
);
}
使用该代码意味着你需要将你的widget.collectionName传入...
所以每当你调用widget的手势检测器()
你把widget.collection名称传入,就像这样。
gesturedetector(widget.collectionName);