2

我正在尝试设置此枚举,以便它能够返回正确的图像,尽管我正在努力寻找一种合并上下文的方法,因为它位于一个单独的类中。

public enum CubeType
{
    GREEN { 
        public Drawable getImage()
        {
            return Context.getResources().getDrawable( R.drawable.cube_green );
        }
    };

    abstract public Drawable getImage();
}

我得到的错误是:

无法从类型 Context 对非静态方法 getResources() 进行静态引用

4

2 回答 2

3

我想你可以有一个上下文作为 getImage() 的参数:

...
GREEN { 
    public Drawable getImage(Context c)
    {
        return c.getResources().getDrawable( R.drawable.cube_green );
    }
};
...

}

于 2011-02-25T23:25:12.637 回答
1

为什么不在一个包装枚举和将枚举值与资源 ID 相关联的 HashMap 的类中定义枚举?

于 2011-02-25T23:29:07.997 回答