单击时,Android会随着ImageView淡出
我想在服务类中创建ImageView。我想在用户点击时淡出我的图像。我尝试以下代码:单击时,Android会随着ImageView淡出,android,animation,imageview,onclicklistener,Android,Animation,Imageview,Onclicklistener,我想在服务类中创建ImageView。我想在用户点击时淡出我的图像。我尝试以下代码: ImageView chatHead = new ImageView(this); chatHead.setImageResource(R.drawable.battery_20); final Animation fadeOut = new AlphaAnimation(1, 0); fadeOut.setInterpolator(new Acc
ImageView chatHead = new ImageView(this);
chatHead.setImageResource(R.drawable.battery_20);
final Animation fadeOut = new AlphaAnimation(1, 0);
fadeOut.setInterpolator(new AccelerateInterpolator());
fadeOut.setStartOffset(50);
fadeOut.setDuration(3000);
fadeOut.setAnimationListener(new Animation.AnimationListener()
{
public void onAnimationEnd(Animation animation)
{
chatHead.setVisibility(View.GONE);
}
public void onAnimationRepeat(Animation animation) {}
public void onAnimationStart(Animation animation) {}
});
chatHead.setAnimation(fadeOut);
chatHead.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
chatHead.setVisibility(View.INVISIBLE);
}
});
当我点击ImageView的图像时,它立即消失
chatHead.setVisibility(View.INVISIBLE);
您需要在上线后开始动画
fadeOut.start();
像
您需要在上线后开始动画
fadeOut.start();
像
这是因为您正在调用
setVisibility(View.INVISIBLE)在图像中的code>单击Listener
重新定义OnClickListener
方法,如下所示:
chatHead.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
fadeOutAndHideImage(chatHead);
}
});
定义衰减和隐藏图像方法:
private void fadeOutAndHideImage(final ImageView img)
{
Animation fadeOut = new AlphaAnimation(1, 0);
fadeOut.setInterpolator(new AccelerateInterpolator());
fadeOut.setDuration(1000);
fadeOut.setAnimationListener(new AnimationListener()
{
public void onAnimationEnd(Animation animation)
{
img.setVisibility(View.GONE);
}
public void onAnimationRepeat(Animation animation) {}
public void onAnimationStart(Animation animation) {}
});
img.startAnimation(fadeOut);
}
请参阅以获取参考。这是因为您正在调用
setVisibility(View.INVISIBLE)在图像中的code>单击Listener
重新定义OnClickListener
方法,如下所示:
chatHead.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
fadeOutAndHideImage(chatHead);
}
});
定义衰减和隐藏图像方法:
private void fadeOutAndHideImage(final ImageView img)
{
Animation fadeOut = new AlphaAnimation(1, 0);
fadeOut.setInterpolator(new AccelerateInterpolator());
fadeOut.setDuration(1000);
fadeOut.setAnimationListener(new AnimationListener()
{
public void onAnimationEnd(Animation animation)
{
img.setVisibility(View.GONE);
}
public void onAnimationRepeat(Animation animation) {}
public void onAnimationStart(Animation animation) {}
});
img.startAnimation(fadeOut);
}
请参阅以供参考。image not disapear never:(不知道??image not disapear never:(不知道??为什么要在单击按钮时隐藏图像?
chatHead.setVisibility(View.VISIBLE);
为什么不chatHead.setVisibility(View.VISIBLE)
sry我不明白你的问题!当你单击图像时,你正在将其设置为不可见模式,然后开始动画。chatHead.setVisibility(View.invisible);
删除该部分,然后你可以看到淡出按钮单击按钮时为什么要隐藏图像?chatHead.setVisibility(View.INVISIBLE);
为什么不chatHead.setVisibility(View.VISIBLE);
sry我不明白你的问题!当你点击图像时,你正在将其设置为不可见模式,然后开始动画。chatHead.setVisibility(View.INVISIBLE);
移除该部分,你就能看到淡出