如何在CircleImageView(hdodenhof / CircleImageView)中设置drawable?

时间:2017-10-10 16:47:36

标签: android drawable

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {

   profilephoto.setImageDrawable(
       getResources().getDrawable(
           R.drawable.profile, 
           getApplicationContext().getTheme()));
} 
else {       
   profilephoto.setImageDrawable(
       getResources().getDrawable(
           R.drawable.profile));
}

我想动态地将图像设置为circleImageView。我使用了setImageDrawable,但CircleImageView没有显示任何图片。

2 个答案:

答案 0 :(得分:2)

  1. 在gradle文件中添加依赖项库

    compile 'de.hdodenhof:circleimageview:2.2.0'
    
  2. 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"
            app:civ_border_width="2dp"
            app:civ_border_color="#FF000000"/>
    
  3. 活动类

    ImageView imageView = (ImageView) findViewById(R.id.profile_image);
    imageView.setImageDrawable(getResources().getDrawable(R.drawable.sa));
    

答案 1 :(得分:0)

添加此源代码:setLayerType(View.LAYER_TYPE_SOFTWARE, null)

更改代码:

ImageView imageview = (ImageView) findViewById(R.id.profile_image);

要:

ImageView imageview = (ImageView) findViewById(R.id.profile_image);
imageView.setLayerType(View.LAYER_TYPE_SOFTWARE, null);