Flutter-如何将一个类与变量连接以从此类中获取静态变量?

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

我正在制作一个神奇宝贝应用程序,但我在其他项目中已经遇到了一个问题,我想知道是否有人可以帮助我解决问题。

我从其他屏幕上收到一个名为pokemonName的变量,我想传递该变量并与“ Strings”类连接,就像Strings。+ pokemonName.toLowerCase(),转换为小写字母以从该类获取地图字符串,但我不知道该如何实现以消除开关,也不需要为每个神奇宝贝使用很多情况。

class PokemonDetailScreen extends StatelessWidget {

  final String pokemonName;
  final String image;
  Map<String, dynamic> pokemonMap = {};

  PokemonDetailScreen(this.pokemonName, this.image, this.index){

    getPokemonMap();

  }

     @override
  Widget build(BuildContext context) {
    return Container();

  }

  void getPokemonMap(){

    switch(pokemonName){

      case "Bulbasaur":
        pokemonMap = Strings.bulbasaur;
            break;

      case "Charmander":
        pokemonMap = Strings.charmander; 
             break;

    }

  }

}

**Class in another dart file:**

class Strings {

 static Map bulbasaur = {};

}

我需要的是这样的东西:

void getPokemonMap(){

  pokemonMap = Strings.$pokemonMap.toLowerCase();

}
flutter dart static
2个回答
1
投票

您可以做的是创建一个静态地图,该地图以口袋妖怪的名称为索引,并且其值为地图。


0
投票

〜您可以使用JSON文件来完成所有这些操作,而不是使用类。〜

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