我将如何设置这个枚举来返回我想要的图像?

发布于 2024-10-19 05:06:26 字数 408 浏览 4 评论 0原文

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

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

    abstract public Drawable getImage();
}

我收到的错误是:

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

I'm trying to set up this enum so that it has the ability to return the correct image, though I'm struggling with a way to incorporate the context since it is in a separate class.

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

    abstract public Drawable getImage();
}

The error I'm getting is:

Cannot make a static reference to the non-static method getResources() from the type Context

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

木有鱼丸 2024-10-26 05:06:26

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

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

}

I guess you could have a context as a parameter to getImage():

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

}

笑,眼淚并存 2024-10-26 05:06:26

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

Why not just define the enum in a class that wraps the enum and a HashMap relating the enum values to resource id's?

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文