我是 android 新手,我需要以圆形形式显示图像,但某些图像的宽度和高度超过自定义圆形图像视图的宽度和高度,然后将图像显示为拉伸形式,但我想显示图像并减小图像并显示在圆圈中。我正在使用通用图像加载器来加载图像。请帮助我如何做到这一点。
提前致谢
我是 android 新手,我需要以圆形形式显示图像,但某些图像的宽度和高度超过自定义圆形图像视图的宽度和高度,然后将图像显示为拉伸形式,但我想显示图像并减小图像并显示在圆圈中。我正在使用通用图像加载器来加载图像。请帮助我如何做到这一点。
提前致谢
在build.gradle
文件中,将此行放入依赖项中:
compile 'de.hdodenhof:circleimageview:2.0.0'
这是一个圆形 imageView 的库。然后在xml中你可以像这样使用它:
<de.hdodenhof.circleimageview.CircleImageView
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/profile_image"
android:layout_width="60dp"
android:layout_height="60dp"
android:scaleType="centerCrop"
android:src="@drawable/male_profile_image"
app:civ_border_width="0dp"/>
您可以通过使用圆形图像视图库来实现这一点
implementation 'de.hdodenhof:circleimageview:2.2.0'
接下来,您将把它添加到您的布局中
<de.hdodenhof.circleimageview.CircleImageView
android:id="@+id/ptv_pic"
android:layout_width="120dp"
android:layout_height="100dp"
android:src="@drawable/ptv" />
最后,创建一个可绘制文件以匹配上面提到的 src “ptv”(当然可以给它任何你想要的名称)
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
<item
android:drawable="@mipmap/yourImage" (Here is where you'll add the image)
android:width="50dp" (Adjust the width and height here)
android:height="50dp"
/>
</layer-list >
您可以使用第三方库CircularImageView。将以下内容放入您的依赖项中
compile 'com.mikhaellopez:circularimageview:3.0.2'
将您的替换ImageView
为以下内容
<com.mikhaellopez.circularimageview.CircularImageView
android:id="@+id/profile_image"
android:layout_width="250dp"
android:layout_height="250dp"
app:civ_border_color="#EEEEEE"
app:civ_border_width="4dp"
app:civ_shadow="true"
app:civ_shadow_radius="10"
app:civ_shadow_color="#8BC34A"/>
接着
CircularImageView circularImageView = (CircularImageView)findViewById(R.id.profile_image);
ImageLoader imageLoader = ImageLoader.getInstance();
imageLoader.displayImage(imageUri, circularImageView);