Android在Enum中使用Drawables

时间:2013-03-03 03:10:51

标签: android enums drawable

我有一个项目,我必须设计一系列硬币并使用它。我的GUI看起来像这样 - http://i.imgur.com/eRzN3Sb.png

我希望能够从coinArray为每枚硬币加载适当的图像。基本上我想能够说 coinView.setBackgroundResource(coinArray [x] .image)我假设我需要以某种方式使用一个drawable对象,我希望它可以包含在我的枚举类中。枚举类看起来像

public enum Currency {
    Penny(1), Nickel(5), Dime(10), Quarter(25);
    private int value;
    private Currency(int value) {
            this.value = value;

    }

}

数组中的每个硬币都有一个货币值,所以我可以计算它们。我想添加一个drawable或其他一些对象,让我能够为每个硬币引用正确的图像。

谢谢

1 个答案:

答案 0 :(得分:8)

public enum Currency {
    Penny(1,R.drawable.xxx), Nickel(5,R.drawable.yyy),...;
    private int value;
    private int image
    private Currency(int value,int drawableId) {
            this.value = value;
            this.image=drawableId;

    }
    public int getImage(){
       return image;
    }

}

有很多方法可以做到这一点。这是其中之一。使用它:

coinView.setImageResource(coinArray[x].getImage());