java - 矩形不更新也不显示颜色

标签 java android view colors

我遇到了矩形不停止的问题(由于抓取屏幕高度的错误而导致硬编码值)此外,当我用红色油漆绘制时,无论如何我总是得到一个黑色矩形,有什么想法吗?

如果您需要更多代码,请告诉我。

 public void draw(Canvas canvas){
        Rect rect;
        rect = new Rect(x, y, x + SIZE, y + SIZE);
        Paint paint = new Paint(Color.rgb(250, 0, 0));

       canvas.drawRect(rect, paint);
    }

    public void update(){

        if (this.y < (1920 - SIZE)) {
            this.y += 5;
        } else if (this.y > 1920){
            this.y = 1920 - SIZE;
        }


    } 

最佳答案

Paint(int)构造函数不接受颜色值;这些实际上是标志。

只需使用 setColor(int)相反。

如果您希望它具有动画效果,请将对 invalidate() 的调用添加到您的 onDraw() 例程中(位置并不重要)。这样,它就会不断地重绘,无限循环。另外,还在 onDraw() 内调用 update()。有点像“穷人”的动画,但它应该能让你继续前进。

关于java - 矩形不更新也不显示颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57878030/

相关文章:

java - 使用 .jar 文件编辑 .jar 文件

java - 24 小时倒计时器,具有小时、分钟、秒三个独立的 TextView

android - 在 fragment 中找不到警报对话框的 View

android - 如何在android中通过蓝牙连接并向多个设备发送消息?

Android通过单击外部使 View 消失

ios - 使用开关更改整个应用程序中文本、单元格和 View Controller 的颜色

android - 如何将 child 添加到 xml 中的 android 自定义 View /布局?

java - 在 int 数组中搜索

java - 如何在MySQL中使用表达式作为OFFSET?

java - java.length或我的整个程序出现问题