是否可以将图像添加为类属性?



我正在创建一个包含不同菜肴的类,其属性是标题,难度,类型和时间。但我也想要一个在创建该类的对象时将显示的图像。如何将图像.png设置为类的属性?

代码如下:

public class Dish {
private String name;
private String time;
private String type;
private Whatevergoesinhere image;
private int difficulty;

public Dish(String name, String time, String type, Whatevergoesinhere image, int difficulty) {
this.name = name;
this.time = time;
this.type = type;
this.image = image;
this.difficulty= difficulty;
}
public String getName() {
return name;
}
public String getTime() {
return time;
}
public String getType() {
return type;
}
public Whatevergoesinhere getImage() {
return image;
}
public int getDifficulty() {
return difficulty;
}
public static final Dish[] dishes = {
new Dish("Judías verdes con patatas", "45 min.", "verduras", "R.id.ic_launcher_background.xml", )
}
}

我试过使用BufferedImage,但它在Android中不受支持。

请帮忙,如果你有任何想法,就告诉。

继续我的评论:">如果您从应用程序资源(res文件夹(获取这些图像,那么您只需传递可绘制的 ID,该 ID 稍后将用于在ImageView上设置图像资源。

为此,您需要将变量声明更改为以下内容image

import android.support.annotation.DrawableRes
// import androidx.annotation.DrawableRes: Use this import if you are using AndroidX dependencies
public class Dish {
...
@DrawableRes
private int image;
...

然后你还需要将构造函数和 getter 方法声明更改为以下形式:

public Dish(..., @DrawableRes int image, ...) {
...
this.image = image;
...
}
...
@DrawableRes
public int getImage() {
return image;
}

稍后,当使用此数据保存类时,您只需使用 ImageView.setImageResource 即可显示您拥有的图像。

相关内容

  • 没有找到相关文章

最新更新