В вашем build.gradle Файл:
dependencies {
...
compile 'de.hdodenhof:circleimageview:2.1.0'
}
В XML:
<de.hdodenhof.circleimageview.CircleImageView
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/profile_image"
android:layout_width="96dp"
android:layout_height="96dp"
android:src="@drawable/profile"
app:civ_border_width="2dp"
app:civ_border_color="#FF000000"/>
Ограничения:
- ScaleType всегда CENTER_CR OP, и вы получите исключение, если попытаетесь его изменить. Это (в настоящее время) по дизайну, так как отлично подходит для изображений профиля.
- Включение функции adjustViewBounds не поддерживается, так как для этого требуется неподдерживаемый ScaleType
- Если вы используете библиотеку для загрузки изображений, такую как Picasso или Glide, вам необходимо отключить их анимацию затухания, чтобы избежать перепутанных изображений. Для Picasso используйте параметр noFade(), для использования Glide dontAnimate(). Если вы хотите сохранить анимацию fadeIn, вам нужно получить изображение в Target и самостоятельно применить собственную анимацию при получении растрового изображения.
- Использование TransitionDrawable с CircleImageView не работает должным образом и приводит к испорченным изображениям.
hdodenhof/CircleImageView
Определить "лучше". –
Сделайте это с помощью XML. Рекомендуется для android. – Abhishek
вы можете попробовать это [rep] (https://github.com/hdodenhof/CircleImageView), и оба кода и xml в порядке, между ними нет лучшего. –