以下是我的代码
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_test_layer_drawable2);
ImageView i = (ImageView) findViewById(R.id.i);
LayerDrawable ld = new LayerDrawable(new Drawable[]{dra(this, R.drawable.ic_insert_drive_file_black_48dp), new Rect()});
ld.setLayerInsetTop(1, 200);
ld.setLayerInsetLeft(1, 200);
i.setImageDrawable(ld);
}这里是Rect
class Rect extends Drawable {
Context c;
@Override
public void draw(Canvas canvas) {
c = getApplicationContext();
Paint p = new Paint();
p.setStrokeWidth(2);
p.setStyle(Paint.Style.STROKE);
p.setColor(col(c, R.color.colorAccent));
canvas.drawRect(100, 100, 200, 200, p);
}
@Override
public void setAlpha(int alpha) {
}
@Override
public void setColorFilter(ColorFilter colorFilter) {
}
@Override
public int getOpacity() {
return 0;
}
}输出为:

我希望把矩形移到ImageView的右下角,怎么做呢?
当我使用setLayerInsetTop时,它只改变矩形的大小
https://stackoverflow.com/questions/38103021
复制相似问题