代码:
<de.hdodenhof.circleimageview.CircleImageView
android:padding="5dp"
android:background="@drawable/sub_cat_background"
android:layout_width="70dp"
android:layout_height="70dp"
android:id="@+id/tab_image"
android:src="@drawable/mehendi_tab"
android:layout_gravity="center_horizontal"/>
sub_cat_background.xml
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:innerRadius="0dp"
android:shape="ring"
android:thicknessRatio="2"
android:useLevel="false" >
<solid android:color="@android:color/transparent" />
<stroke
android:width="5dp"
android:color="@color/white" />
</shape>
这是群众之王建议后我能得到的:
编辑4:
我也试过画布方式。
为此,我没有使用xml设置白色环,而是使用带有白色圆圈的图像,如上图所示(图2)。
Bitmap bitmap=BitmapFactory.decodeResource(getResources(),R.drawable.salon_selected);
int imageMaxSize = Math.max(bitmap.getWidth(), bitmap.getHeight());
RadialGradient gradient = new RadialGradient(imageMaxSize / 2, imageMaxSize / 2, imageMaxSize / 2,
new int[] {0xFFFFFFFF, 0xFFFFFFFF, 0x00FFFFFF},
new float[] {0.0f, 0.8f, 1.0f},
android.graphics.Shader.TileMode.CLAMP);
Paint paint = new Paint();
paint.setShader(gradient);
Canvas canvas=new Canvas();
// in onDraw(Canvas)
canvas.drawBitmap(bitmap, 0.0f, 0.0f, paint);
tabImage.setImageBitmap(bitmap);
但我没有任何效果,代码来源(How to achieve feathering effect in Android?)
答案 0 :(得分:0)
在android studio中,有一个可绘制的drawable,可用于将阴影应用于任何视图。这类似于投影。
android:background="@drawable/abc_menu_dropdown_panel_holo_light"
使用此功能,您无法更改视图的背景颜色。它的边框颜色。如果你想要自己的自定义drawable,那么使用layer-list
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<!--the shadow comes from here-->
<item
android:bottom="0dp"
android:drawable="@android:drawable/dialog_holo_light_frame"
android:left="0dp"
android:right="0dp"
android:top="0dp">
</item>
<item
android:bottom="2dp"
android:left="2dp"
android:right="2dp"
android:top="2dp">
<!--whatever you want in the background, here i preferred solid white -->
<shape android:shape="rectangle">
<solid android:color="@android:color/white" />
</shape>
</item>
</layer-list>
并适用于您的观点,如下所示
android:background="@drawable/custom_drop_shadow_drawable"
如果这不起作用,您可以使用ShadowImageView
尝试这样的操作答案 1 :(得分:0)
通过使用这些属性,您可以获得发光和阴影效果
android:shadowColor
android:shadowDx
android:shadowDy
android:shadowRadius
您是否需要以编程方式实现相同的效果。 Android提供以下与影子相关的API。
public void setShadowLayer (float radius, float dx, float dy, int color)
所以,我尝试了一些不同的字体,阴影设置,颜色和透明度设置。
这是结果image
您也可以使用任何视图,即imageview,button,textview等。