2016-06-10 6 views
0

Я получаю странную проблему при загрузке изображения с помощью универсального загрузчика изображений. Я хочу показать изображение со всеми углами округленными, но выходное изображение не отображается в соответствии с требованием.Углы изображения не округляются при использовании универсального загрузчика изображений

Ниже мой код в адаптер элемента XML -

<RelativeLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:id="@+id/container_rl" 
    android:background="@color/transparent_color" 
    android:layout_height="300dp"> 

<ImageView 
    android:id="@+id/object_iv" 
    android:scaleType="fitXY" 
    android:adjustViewBounds="true" 

    android:layout_width="match_parent" 
    android:layout_height="match_parent" /> 

<View 
    android:background="@drawable/rounded_corner_bg" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"/> 

<TextView 
    android:id="@+id/name_tv" 
    android:layout_centerInParent="true" 
    android:layout_height="wrap_content" 
    android:layout_width="wrap_content" 
    android:layout_marginLeft="@dimen/space_20" 
    android:layout_marginRight="@dimen/space_20" 
    android:text="@string/app_name" 
    android:textColor="@color/white" 
    android:textSize="@dimen/size_18"/> 
</RelativeLayout> 

Вот код адаптера -

ImageLoaderUniversal.ImageLoadWithRoundedCorners(mContext,ImageURI, mFeedIV); 

и, наконец, код для загрузки изображения -

public static void ImageLoadWithRoundedCorners(Context mContext,final String URl, final ImageView imageView){ 
    DisplayImageOptions options = new DisplayImageOptions.Builder() 
      .showImageOnLoading(R.mipmap.ic_default_media) 
      .showImageForEmptyUri(R.mipmap.ic_default_media) 
      .showImageOnFail(R.mipmap.ic_default_media) 
      .cacheOnDisk(true) 
      .displayer(new RoundedBitmapDisplayer(25)) 
      .build(); 

    ImageLoaderConfiguration.Builder builder = new ImageLoaderConfiguration.Builder(mContext).defaultDisplayImageOptions(
      options).memoryCache(new WeakMemoryCache()); 
    ImageLoaderConfiguration config = builder.build(); 
    imageLoader = ImageLoader.getInstance(); 
    if (!imageLoader.isInited()) { 
     imageLoader.init(config.createDefault(mContext)); 
    } 
    imageLoader.displayImage(URl, imageView, options); 
} 

Добавьте сюда является скриншотом, прикрепленным к тому, как изображения отображаются с использованием вышеуказанного кода.

Просьба предоставить ваше решение по моей проблеме.

ТИА

ответ

0

Try This

options = new DisplayImageOptions.Builder() 
    .displayer(new RoundedBitmapDisplayer(50)) 
    .showStubImage(R.drawable.ic_app) 
    .showImageForEmptyUri(R.drawable.camera) 
    .showImageOnFail(R.drawable.ic_error) 
    .cacheOnDisc() 
    .build(); 
+0

Пробовал и тот же результат – Ravi

0

Пожалуйста компилировать его в своих зависимости и использовать ниже заданный код XML вместо ImageView.

компиляции 'de.hdodenhof: circleimageview: 2.0.0'

<de.hdodenhof.circleimageview.CircleImageView 
         android:id="@+id/ivUserImage_nfp" 
         android:layout_width="60dp" 
         android:layout_height="60dp" 
         android:src="@drawable/profile_img" 
         app:civ_border_color="@color/textcolor" 
         app:civ_border_width="1dp" /> 

установить цвет границы и ширину в соответствии с вашими потребностями. Используйте универсальный загрузчик изображений только для загрузки изображения.

+0

я не хочу показать полностью круглое изображение, мне нужны только закругленные углы – Ravi

0

Я использую универсальную библиотеку загрузчика Image скачать и закругление углов изображения, и он работал на меня

ImageLoaderConfiguration config = new ImageLoaderConfiguration.Builder(thisContext) 
      // You can pass your own memory cache implementation 
      .discCacheFileNameGenerator(new HashCodeFileNameGenerator()) 
      .build(); 

DisplayImageOptions options = new DisplayImageOptions.Builder() 
      .displayer(new RoundedBitmapDisplayer(10)) //rounded corner bitmap 
      .cacheInMemory(true) 
      .cacheOnDisc(true) 
      .build(); 

ImageLoader imageLoader = ImageLoader.getInstance(); 
imageLoader.init(config); 
imageLoader.displayImage(image_url,image_view, options); 

Для получения дополнительной справочной refereImageView rounded corners

Смежные вопросы