有什么办法可以使ImageView
到xml layout
的角落吗?即使没有,我们可以通过什么方式实现这一目标?
PS:image urls
正在从API中获取。不是来自drawable
文件夹
答案 0 :(得分:1)
使用 Glide 库
使用
Glide
.with(context)
.load(url)
.apply(
RequestOptions()
.circleCrop())
.into(imageView)
答案 1 :(得分:0)
您可以使用这样的自定义视图来实现它
public class RoundImageView extends ImageView {
private float mRadius = 18.0f;
private Path mPath;
private RectF mRect;
public RoundImageView(Context context) {
super(context);
init();
}
public RoundImageView(Context context, AttributeSet attrs) {
super(context, attrs);
init();
}
public RoundImageView(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
init();
}
private void init() {
mPath = new Path();
}
@Override
protected void onDraw(Canvas canvas) {
mRect = new RectF(0, 0, this.getWidth(), this.getHeight());
mPath.addRoundRect(mRect, mRadius, mRadius, Path.Direction.CW);
canvas.clipPath(mPath);
super.onDraw(canvas);
}
}
并在您的XML中使用
<your_pkag.RoundImageView
android:id="@+id/imgView"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:src="@drawable/image" />
答案 2 :(得分:0)
我不知道你想做什么。但是为了边界。
您可以创建如下所示的可绘制文件。
line.xml
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<corners android:radius="5dp" />
<stroke android:width="2dp" android:color="#000" />
</shape>
activity_xxx.xml
<ImageView
android:layout_height:"200dp"
android:layout_width:"200dp"
android:background:"@drawable/line.xml"
/>