【发布时间】:2014-02-25 12:55:21
【问题描述】:
我开发了一个 RSS 应用程序。我希望包含标题和图像的 ListView 具有圆角的图像。我在网上做了一个示例代码,但问题是图像仍然是矩形的。奇怪的是我有一个滑动菜单,当切换它时,它会将 rss ListView 推开,而它被推时图像有圆角!当他们停止推动动画时,再次变成矩形。这对我来说是一个非常奇怪的问题,所以有什么帮助吗? 圆形图像类:
public class RoundedImageView extends ImageView
{
private float radius = 20.0f;
public RoundedImageView(Context context)
{
super(context);
}
public RoundedImageView(Context context,AttributeSet attrs)
{
super(context,attrs);
}
public RoundedImageView(Context context,AttributeSet attrs,int defStyle)
{
super(context,attrs,defStyle);
}
@SuppressLint("DrawAllocation")
@Override
protected void onDraw(Canvas canvas)
{
Path clipPath = new Path();
RectF rect = new RectF(0,0,getWidth(), getHeight());
clipPath.addRoundRect(rect, radius, radius, Path.Direction.CW);
canvas.clipPath(clipPath);
super.onDraw(canvas);
}
}
【问题讨论】:
-
你为什么要这样做?创建一个圆角 XML 并设置为图像视图的背景。
标签: android listview bitmap rounded-corners