G g*_*ffo 1 flutter flutter-layout
我想在 image.asset() 中显示随机图像,这是我尝试过的
static var listImagesnotFound = [
"assets/cactusno.jpg",
"assets/colorednot.jpg",
"assets/juno.jpg",
"assets/notfound.png",
"assets/robno.png",
"assets/spano.jpg"
];
static var _random = Random();
var imageToShow =
listImagesnotFound[_random.nextInt(listImagesnotFound.length)];
}
Image.asset(listImagesnotFound.toString()),
Run Code Online (Sandbox Code Playgroud)
尝试这个:
dynamic listImagesnotFound = [
"assets/cactusno.jpg",
"assets/colorednot.jpg",
"assets/juno.jpg",
"assets/notfound.png",
"assets/robno.png",
"assets/spano.jpg"
];
Random rnd;
Widget buildImage(BuildContext context) {
int min = 0;
int max = listImagesnotFound.length-1;
rnd = new Random();
int r = min + rnd.nextInt(max - min);
String image_name = listImagesnotFound[r].toString();
return Image.asset(image_name);
}
Or
Image img() {
int min = 0;
int max = listImagesnotFound.length-1;
rnd = new Random();
int r = min + rnd.nextInt(max - min);
String image_name = listImagesnotFound[r].toString();
return Image.asset(image_name);
}
Then call your buildImage or img function like :
buildImage(context),
or
img(),
Run Code Online (Sandbox Code Playgroud)
随机数可以生成任何数字,因此如果您不使用最小值或最大值,如果生成的随机数大于您的资产列表索引,则会返回错误。
| 归档时间: |
|
| 查看次数: |
6592 次 |
| 最近记录: |