Как удалить выдерживающее пространство из ImageView после обрезки его холста? - PullRequest
2 голосов
/ 25 марта 2012

У меня в ImageView отображается растровое изображение. В его методе onDraw я использую clipRect, чтобы отрезать несколько пикселей снизу. Это работает нормально, но высота ImageView не корректируется с измененным холстом, и поэтому остается нежелательное пространство. Как я могу избавиться от этого?

Я пытался соответствующим образом уменьшить высоту родителя и установить для его clipChildren значение false, но это вызвало некоторые проблемы.

@Override
protected void onDraw( Canvas canvas )
{
    Path clipPath = new Path();

    clipPath.addRoundRect(
        new RectF( 0, 0, width, height - (int) ( watermarkHeight * scale ) ),
        cornerRadius,
        cornerRadius,
        Path.Direction.CW );

    clipPath.addRect( 0, 0, width, cornerRadius, Path.Direction.CW );

    canvas.clipPath( clipPath );

    super.onDraw( canvas );
}

1 Ответ

0 голосов
/ 25 марта 2012

используйте свойство "Adjust Bound View" вашего ImageView

...