gpt4 book ai didi

java - 颜色无法转换为int

转载 作者:行者123 更新时间:2023-12-01 18:23:13 26 4
gpt4 key购买 nike

我收到一个奇怪的错误,我无法使用 Color 对象设置绘制对象的颜色,这很奇怪,因为 paint.setColor(Color.RED) 是如何有效的而 paint.setColor(this.color) 则不是

这是我的代码。

public class Shape{
protected GameView2 game_view;
protected int x;
protected int y;
protected int width;
protected int height;
protected Color color;

public Shape(GameView2 game_view, Color color, int x, int y, int width, int height) {
this.game_view = game_view;
this.x = x;
this.y = y;
this.width = width;
this.height = height;
this.color = color;
}

public void onDraw(Canvas canvas){

Paint paint = new Paint();
Rect rec = new Rect(x, y, x + width, y + height);
paint.setColor(this.color); //does not work
paint.setStyle(Paint.Style.FILL);
canvas.drawRect(rec, paint);
}
}

编辑:

Shape 对象已声明为另一个名为 GameView 的类,它非常大,所以我不会粘贴整个类,但是在创建 Shape 对象时,这样做是这样的:

new Shape(this, Color.BLACK, 0, 0, 100, 100)

我得到的错误是不兼容的类型:颜色无法转换为int

最佳答案

setColor 需要 int 类型,但 this.color 不是 >int,您尝试设置颜色对象而不是 int 值。

public native void setColor(int color);

关于java - 颜色无法转换为int,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27067114/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com