有没有办法将颜色应用于android中的alpha动画?我知道如何使用<alpha>
元素,但我希望alpha可以应用一种颜色以及一个alpha,这样我就可以高亮布局。这可能吗?android将颜色应用于alpha动画
4
A
回答
3
动画不能在Android中包含颜色更改 - 只包括alpha,旋转,缩放和翻译。
也就是说,您仍然可以通过将不同颜色的两个对象重叠在一起并淡入淡出顶部进行颜色更改。
您也可以查看TransitionDrawable或TextSwitcher来完成类似的事情。希望我们能够在未来的更新中获得对色彩动画的全面支持。
1
我也尝试阿尔法相同的事情。但 http://nathanael.hevenet.com/android-dev-fading-background-animation/ 此链接可能会回答你的问题。 使用过渡的可能...... :)
1
嗯,这里是我的解决方案所述屏幕的特定区域(见下面的演示下)。请注意,此代码是针对运行> = API9的设备。
初学者友好,只是复制和粘贴。
FadeAnimationColored.java
public class FadeAnimationColored {
private View view;
private float maxBrightness = 1.0f;
private float minBrightness = 0.0f;
private long duration = 400L;
private long startOffset = 0L;
private int color = android.R.color.white;
// Constructors...
public FadeAnimationColored(View view, String color, float maxBrightness, float minBrightness, long duration, long startOffset) {
this.view = view;
this.color = Color.parseColor(color);
this.maxBrightness = maxBrightness;
this.minBrightness = minBrightness;
this.duration = duration;
this.startOffset = startOffset;
prepareView();
}
public void fadeOut() {
this.view.setAlpha(1f);
Animation anim = new AlphaAnimation(minBrightness, maxBrightness);
anim.setDuration(duration);
anim.setStartOffset(startOffset);
anim.setFillEnabled(true);
anim.setFillAfter(true);
view.startAnimation(anim);
}
public void fadeIn() {
Animation anim = new AlphaAnimation(maxBrightness, minBrightness);
anim.setDuration(duration);
anim.setStartOffset(startOffset);
anim.setFillEnabled(true);
anim.setFillAfter(true);
view.startAnimation(anim);
}
private void prepareView() {
this.view.setBackgroundColor(this.color);
this.view.setAlpha(0f);
}
}
下添加一个额外的查看到你的布局,把它作为一个覆盖(我用了一个简单的FrameLayout
被设置为match_parent
)
这里是一个显示如何在活动或片段中设置动画的片段:
FrameLayout interceptorFrame = (FrameLayout) mView.findViewById(R.id.fl_interceptor);
final FadeAnimationColored fadeAnimationLayout =
new FadeAnimationColored(interceptorFrame, MaterialColor.GREY_800, 0.9f, 0.0f, 400L, 0);
mFabMenu.setOnMenuToggleListener(new FloatingActionMenu.OnMenuToggleListener() {
@Override
public void onMenuToggle(boolean opened) {
if (opened) {
fadeAnimationLayout.fadeOut();
} else {
fadeAnimationLayout.fadeIn();
}
}
});
相关问题
- 1. 如何将动画应用于Android中的视图的setBackground颜色属性?
- 2. 使用ShaderMaterial的Alpha颜色
- 3. webgl颜色和alpha
- 4. android两个alpha动画
- 5. Android ImageView更改alpha动画
- 6. Android的Toast默认颜色和alpha
- 7. Android - 使用Alpha褪色动画闪烁图像
- 8. Android的图标动画改变颜色
- 9. Android按钮动画(颜色变化)
- 10. Android - 可绘制,将颜色过滤器应用于特定颜色
- 11. 如何将动态alpha蒙版应用于Android上的文本
- 12. JQuery滚动动画颜色
- 13. 如何在SFML中将颜色设置为alpha(移除颜色)?
- 14. CSS:将颜色应用于灰线时的动画/翻译效果
- 15. 反应颜色动画同步
- 16. 的Android fingerpaint画布颜色
- 17. 将颜色贴图应用于mpl_toolkits.mplot3d.Axes3D.bar3d
- 18. 将颜色应用于Open-GL纹理
- 19. C#将颜色应用于字体
- 20. 如何alpha遮罩颜色
- 21. NSColor alpha值darkens颜色
- 22. 动画UIButton文本颜色
- 23. 动画文本颜色
- 24. CSS3动画边框颜色
- 25. 的jQuery + RGBA颜色动画
- 26. Android:overridePendingTransition动画背景颜色
- 27. jQuery:动画文本颜色
- 28. 动画背景颜色
- 29. 动画背景颜色jQuery
- 30. jquery动画导航颜色
link not availabl e! – CoDe 2015-01-05 13:40:16