Sru*_*rai 3 xml android image imageview android-layout
我正在努力使自己ImageView顺利。我已经编写了以下代码,使其看起来是圆形的,但不知何故它仍然显示方形ImageView。[使用毕加索获取图像]
Java代码:
ImageView iv = (ImageView) addLinkDialog.findViewById(R.id.group_icon_jsoup);
Picasso.with(getBaseContext()).load(GroupImageUrl).into(iv);
iv.setBackgroundResource(R.drawable.icon_img);
Run Code Online (Sandbox Code Playgroud)
ImageView代码:
<ImageView
android:id="@+id/group_icon_jsoup"
android:layout_width="75dp"
android:layout_height="75dp"
android:layout_gravity="center"
android:layout_margin="8dp"
android:background="@drawable/icon_img" />
Run Code Online (Sandbox Code Playgroud)
@ drawable / icon_img.xml:
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
<item android:drawable="@drawable/circle"/>
</layer-list>
Run Code Online (Sandbox Code Playgroud)
@ drawable / circle.xml
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:innerRadius="0dp"
android:shape="ring"
android:thicknessRatio="1.9"
android:useLevel="false" >
<solid android:color="@android:color/transparent" />
<stroke
android:width="10dp"
android:color="@android:color/white" />
</shape>
Run Code Online (Sandbox Code Playgroud)
为什么不使用第三方?
试试这个代码
Bitmap picture = BitmapFactory.decodeResource(getResources(), R.mipmap.add_image);
ImageView imageView = (ImageView) findViewById(R.id.imgProfilePicture);
imageView.setImageBitmap(getRoundedBitmap(picture));
public Bitmap getRoundedBitmap(Bitmap bitmap){
Bitmap circleBitmap = Bitmap.createBitmap(bitmap.getWidth(), bitmap.getHeight(), Bitmap.Config.ARGB_8888);
BitmapShader shader = new BitmapShader(bitmap, Shader.TileMode.CLAMP, Shader.TileMode.CLAMP);
Paint paint = new Paint();
paint.setShader(shader);
paint.setAntiAlias(true);
Canvas c = new Canvas(circleBitmap);
c.drawCircle(bitmap.getWidth() / 2, bitmap.getHeight() / 2, bitmap.getWidth() / 2, paint);
return circleBitmap;
}
Run Code Online (Sandbox Code Playgroud)
您的xml文件
<de.hdodenhof.circleimageview.CircleImageView
android:id="@+id/imgProfilePicture"
android:layout_width="110dp"
android:layout_height="110dp"
android:layout_marginBottom="20dp"
app:civ_border_width="3dp"
app:civ_border_color="@color/light_gray" />
Run Code Online (Sandbox Code Playgroud)
并添加到build.gradle
compile 'de.hdodenhof:circleimageview:2.1.0'
Run Code Online (Sandbox Code Playgroud)
圆形ImageView完成!
| 归档时间: |
|
| 查看次数: |
3934 次 |
| 最近记录: |