如何在Android活动屏幕上淡入图像?
image-processing
4
0

我想在Android Activity屏幕上显示一张照片,并从浅单调棕褐色到最终全彩进行渐进和连续淡入。我知道如何在图形对象的Java Image / BufferedImage上执行此操作,但不幸的是,我对Android编程环境一无所知。有人可以帮忙吗?

参考资料:
Stack Overflow
收藏
评论
共 3 个回答
高赞 时间 活跃

嗨,Hiroshi,您可以这样做以淡入淡出:

  ImageView myImageView= (ImageView)findViewById(R.id.myImageView);
  Animation myFadeInAnimation = AnimationUtils.loadAnimation(this, R.anim.fadein);
  myImageView.startAnimation(myFadeInAnimation); //Set animation to your ImageView

在res \ anim \文件夹中,动画文件fadein.xml

<?xml version="1.0" encoding="UTF-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
        <alpha 
            android:fromAlpha="0.0" 
            android:toAlpha="1.0"
            android:interpolator="@android:anim/accelerate_interpolator"
            android:duration="3000"/>
</set>

但要从棕褐色逐渐渐变为全色,必须使用TransitionDrawable

收藏
评论

一旦将图像从完全不透明状态单击为0,我希望图像褪色(然后消失)。这是我的方法:

Animation a = new AlphaAnimation(1.00f, 0.00f);

a.setDuration(1000);
a.setAnimationListener(new AnimationListener() {

    public void onAnimationStart(Animation animation) {
        // TODO Auto-generated method stub

    }

    public void onAnimationRepeat(Animation animation) {
        // TODO Auto-generated method stub

    }

    public void onAnimationEnd(Animation animation) {
        yourView.setVisibility(View.GONE);

    }
});

yourView.startAnimation(a);
收藏
评论

一种方法是使用动画集。看这里;

http://developer.android.com/guide/topics/resources/available-resources.html#animation

我已经完成了一些示例代码(在此示例中,无限循环淡出);

在动画.xml文件中;

<alpha android:fromAlpha="1.0" 
       android:toAlpha="0.3"  
       android:duration="7000"
       android:repeatMode="restart"
       android:repeatCount="infinite"/>

在java文件中;

 ImageView introanim = (ImageView) findViewById(R.id.introanim);
    Animation StoryAnimation = AnimationUtils.loadAnimation(this, R.anim.intro_anim);
    introanim.startAnimation(StoryAnimation);

您可以从棕褐色背景/图片淡出到所需的任何颜色...

收藏
评论
新手导航
  • 社区规范
  • 提出问题
  • 进行投票
  • 个人资料
  • 优化问题
  • 回答问题

关于我们

常见问题

内容许可

联系我们

@2020 AskGo
京ICP备20001863号