我想制作一个示例应用,
它将从图片1切换到 长按图2时 然后放开,它将切换到图片3,然后切换回1,
我已经创建了一个示例代码,在我的终端上没有使用手势检测器工作,它停留在图片1上,
String image;
class unostate extends State<uno> {
@override
Widget build(BuildContext context) {
return Center(
child: GestureDetector(
child: Image.asset(
image = "assets/11.png",
fit: BoxFit.none,
),
onTapDown: (_){
setState(() {
image = "assets/12.png";
});
},
onTapUp: (_){
setState(() {
image = "assets/13.png";
});
},
),
);
}
}
答案 0 :(得分:0)
查看您的逻辑。 我建议您创建一个返回正确图片的函数,并仅使用onTapDown或onTapUp。点击时,您可以调用返回正确图片的函数。
答案 1 :(得分:0)
类似的东西(未经测试的代码):
String image;
class unostate {
final allImages = ['assets/11.png', 'assets/12.png'];
String currentImage;
String getImagem(){
allImages.forEach((String imageName){
if(currentImage != imageName){
//return a difrente image
return imageName;
}
});
//if not found, return a default image name
return allImages[0];
}
@override
Widget build(BuildContext context) {
return Center(
child: GestureDetector(
child: Image.asset(
image = currentImagem,
fit: BoxFit.none,
),
onTapDown: (_){
setState(() {
currentImage = getImagem();
});
},
),
);
}
}