将图标与 Arralist<String> 关联的最佳实践?

扬·马卢塞克

我的 android 应用程序中有一组 cca 50 运动图标,我需要有一个函数来传递运动名称,并且该函数返回运动图标。

现在我是这样处理这个问题的:

public static int getSportIcon(String sport){
    if(sport != null) {
        switch (sport) {
            case "Swimming": {
                return R.drawable.swimming;
            }
            case "Bicycling": {
                return R.drawable.bicycling;
            }
            case "Football": {
                return R.drawable.football;
            }
            case "Badminton": {
                return R.drawable.badminton;
            }
            case "Hockey": {
                return R.drawable.hockey;
            }
            case "Skiing": {
                return R.drawable.skiing;
            }
            case "TableTennis": {
                return R.drawable.table_tennis;
            }
            case "Tennis": {
                return R.drawable.tennis;
            }
            case "Volleyball": {
                return R.drawable.volleyball;
            }
            case "Basketball":
                return R.drawable.basketball;
            default: {
                return R.drawable.ic_android_black_24dp;
            }
        }
    }
    else {
        return R.drawable.ic_android_black_24dp;
    }
}

有没有更好的办法?

谢谢

加布·塞尚
int id = context.getResources().getIdentifier(sport.toLowerCase(), "drawable", context.getPackageName());

这将获得具有匹配字符串名称的 drawable。我会将结果缓存在某处,因此您不必经常使用它(它不是最快的功能,尤其是在绘图时使用)。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将值追加到HashMap <String,ArraList <Object >>

来自分类Dev

将List <string>添加到DropDownList的最佳实践

来自分类Dev

如何将软件与ServiceNow中的服务器CI相关联?最佳实践

来自分类Dev

当单击网格视图时,如何将arralist(position)发送到另一个活动

来自分类Dev

当单击网格视图时,如何将arralist(position)发送到另一个活动

来自分类Dev

将图标附加到文本的最佳方法

来自分类Dev

将图标放在圆上的最佳方法

来自分类Dev

将代码移至服务层的最佳实践

来自分类Dev

将表与案例连接的最佳实践

来自分类Dev

Rails最佳实践,使用多态关联

来自分类Dev

MYSQL中多态关联的最佳实践

来自分类Dev

动态字符串/ List <string>参数的最佳实践

来自分类Dev

将列表项与Google地图标记相关联

来自分类Dev

使用FLASK将REST API与Web界面结合的最佳实践

来自分类Dev

将WebApi托管为单独的项目是否是最佳实践

来自分类Dev

将KeyMap添加到视口的最佳实践

来自分类Dev

将值附加到空列表的最佳实践

来自分类Dev

将Job Engine OpenEdge ABL迁移到.NET的最佳实践

来自分类Dev

将隐藏的div元素放置在html代码上的最佳实践

来自分类Dev

将minSdkVersion从10更改为14的最佳实践

来自分类Dev

将代码放入Docker容器的最佳实践是什么?

来自分类Dev

将应用程序密钥存储在Laravel中的最佳实践

来自分类Dev

应该将配置内置到Docker映像中(最佳实践)

来自分类Dev

将状态道具传递给onClick函数是否是最佳实践?

来自分类Dev

是否有将UI设置存储在文件中的最佳实践?

来自分类Dev

将选项卡与导航结合使用时的最佳实践

来自分类Dev

将XML解析的数据保存到NSMutableDictionary最佳实践

来自分类Dev

最佳实践-Git +构建自动化-将配置分开

来自分类Dev

将内容动态翻译成不同语言的最佳实践

Related 相关文章

  1. 1

    将值追加到HashMap <String,ArraList <Object >>

  2. 2

    将List <string>添加到DropDownList的最佳实践

  3. 3

    如何将软件与ServiceNow中的服务器CI相关联?最佳实践

  4. 4

    当单击网格视图时,如何将arralist(position)发送到另一个活动

  5. 5

    当单击网格视图时,如何将arralist(position)发送到另一个活动

  6. 6

    将图标附加到文本的最佳方法

  7. 7

    将图标放在圆上的最佳方法

  8. 8

    将代码移至服务层的最佳实践

  9. 9

    将表与案例连接的最佳实践

  10. 10

    Rails最佳实践,使用多态关联

  11. 11

    MYSQL中多态关联的最佳实践

  12. 12

    动态字符串/ List <string>参数的最佳实践

  13. 13

    将列表项与Google地图标记相关联

  14. 14

    使用FLASK将REST API与Web界面结合的最佳实践

  15. 15

    将WebApi托管为单独的项目是否是最佳实践

  16. 16

    将KeyMap添加到视口的最佳实践

  17. 17

    将值附加到空列表的最佳实践

  18. 18

    将Job Engine OpenEdge ABL迁移到.NET的最佳实践

  19. 19

    将隐藏的div元素放置在html代码上的最佳实践

  20. 20

    将minSdkVersion从10更改为14的最佳实践

  21. 21

    将代码放入Docker容器的最佳实践是什么?

  22. 22

    将应用程序密钥存储在Laravel中的最佳实践

  23. 23

    应该将配置内置到Docker映像中(最佳实践)

  24. 24

    将状态道具传递给onClick函数是否是最佳实践?

  25. 25

    是否有将UI设置存储在文件中的最佳实践?

  26. 26

    将选项卡与导航结合使用时的最佳实践

  27. 27

    将XML解析的数据保存到NSMutableDictionary最佳实践

  28. 28

    最佳实践-Git +构建自动化-将配置分开

  29. 29

    将内容动态翻译成不同语言的最佳实践

热门标签

归档