我需要在ImageView
上添加淡化效果。
在我的情况下,我有RelativeLayout
,相对背景为黄色,背景的中心有ImageView
。现在我需要对ImageView
的边缘应用淡入淡出效果。这可能吗? (Android api 11+
)
我试过了:
android:requiresFadingEdge="horizontal"
android:fadingEdge="horizontal"
android:fadingEdge="vertical"
android:fadingEdgeLength="40px"
但不起作用..
这是我想要的一个例子。就像你可以看到顶部和左边正在褪色,相反,右边和底边不会褪色..
非常感谢!
答案 0 :(得分:3)
覆盖ImageView中的方法,如下所示:
private float FadeStrength = 1.0f;
private int FadeLength = 40px;
@Override
protected float getTopFadingEdgeStrength() {
return FadeStrength;
}
@Override
protected float getBottomFadingEdgeStrength() {
return FadeStrength;
}
@Override
protected float getLeftFadingEdgeStrength() {
return FadeStrength;
}
@Override
protected float getRightFadingEdgeStrength() {
return FadeStrength;
}
初始化视图添加行:
setFadingEdgeLength(FadeLength);
setVerticalFadingEdgeEnabled(true);
setHorizontalFadingEdgeEnabled(true);
答案 1 :(得分:0)
尝试以下方法:不需要扩展ImageView
imageView.scrollTo(1,0);
imageView.setHorizontalFadingEdgeEnabled(true);
imageView.setFadingEdgeLength(40);