我遇到了矩形不停止的问题(由于抓取屏幕高度的错误,硬编码的值)另外,当我用红色油漆绘制时,我总是得到一个黑色的矩形,有什么想法吗? 如果你需要更多的代码,请告诉我。 public void draw(Canvas canvas){ rect = new Rect(x, y, x + SIZE, y + SIZE); }
public v
我非常困惑ImageView是如何在无效(Rect)调用之后只绘制其内容的一部分的。我检查了ImageView.java,发现除了onDraw(画布)之外没有其他的绘制方法,但onDraw(Canvas)只在超出视图的可见边界时才剪切可绘制的内容。我也读了View.invalidate( Rect )的实现,我认为这个函数的关键是调用mParent.invalidateChild( this,r);然而,我认为父视图不知道如何在给定的Rect中绘制子视图,它最终必须调用其子视图的一些方法