我的课程定义如下:
public class Island extends View {
private ShapeDrawable mDrawable;
public Island(Context context) {
super(context);
int width = 50;
int height = 50;
mDrawable = new ShapeDrawable(new OvalShape());
mDrawable.getPaint().setColor(0xff74AC23);
mDrawable.setBounds(0, 0, width, height);
}
public void change() {
mDrawable.getPaint().setColor(Color.BLACK);
}
protected void onDraw(Canvas canvas) {
mDrawable.draw(canvas);
}
为什么在对象上调用change()时形状不改变颜色?谢谢。
最佳答案
您需要调用无效,以便视图知道它需要重绘