MaskImageView.java 文件源码

java
阅读 21 收藏 0 点赞 0 评论 0

项目:libcommon 作者:
@Override
  protected synchronized void onSizeChanged(int width, int height, int old_width, int old_height) {
    super.onSizeChanged(width, height, old_width, old_height);
    if ((width == 0) || (height == 0)) return;
    // paddingを考慮してマスク用のDrawableのサイズを計算
    final int padding_left = getPaddingLeft();
    final int padding_top = getPaddingTop();
    final int sz = Math.min(width - padding_left - getPaddingRight(), height - padding_top - getPaddingBottom());
final int left =  (width - sz) / 2 + padding_left;
final int top = (height - sz) / 2 + padding_top;
mMaskBounds.set(left, top, left + sz, top + sz);
if (sz > 3) {
    mMaskedPaint.setMaskFilter(new BlurMaskFilter(sz * 2 / 3.0f, BlurMaskFilter.Blur.NORMAL));
}

      // View自体のサイズはそのまま
mViewBoundsF.set(0, 0, width, height);
      if (mMaskDrawable != null) {
    mMaskDrawable.setBounds(mMaskBounds);
}
  }
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号