2015-04-21 72 views
0

我有五个文字浏览。每个人都有一个可见性设置消失的徽章。我希望当我按下按钮时,徽章一次出现一次,彼此间延迟2秒。这是我的onClick事件实际代码:如何使用处理程序延迟图像的显示延迟

public void checkAnswers(View v) 
    { 
     Handler handler = new Handler(Looper.getMainLooper()); 
     fadeInAnimation = AnimationUtils.loadAnimation(activity_Trivia.this, R.anim.fade_in); 
     handler.postDelayed(new Runnable() { 
      @Override 
      public void run() { 
       badge1.startAnimation(fadeInAnimation); 
       badge1.setVisibility(View.VISIBLE); 
      } 
     }, 0); 
     handler.postDelayed(new Runnable() { 
      @Override 
      public void run() { 
       badge2.startAnimation(fadeInAnimation); 
       badge2.setVisibility(View.VISIBLE); 
      } 
     }, 2000); 
     handler.postDelayed(new Runnable() { 
      @Override 
      public void run() { 
       badge3.startAnimation(fadeInAnimation); 
       badge3.setVisibility(View.VISIBLE); 
      } 
     }, 4000); 
     handler.postDelayed(new Runnable() { 
      @Override 
      public void run() { 
       badge4.startAnimation(fadeInAnimation); 
       badge4.setVisibility(View.VISIBLE); 
      } 
     }, 6000); 
     handler.postDelayed(new Runnable() { 
      @Override 
      public void run() { 
       badge5.startAnimation(fadeInAnimation); 
       badge5.setVisibility(View.VISIBLE); 
      } 
     }, 8000); 
    } 

的问题是,第一延迟,当第二徽章出现,第一个徽章皮革和与第二等再次出现后。我想要第一个徽章,第二个徽章......在下一个徽章出现时保持可见。有任何想法吗?我搜查,但没有出现。谢谢!

回答

2

为每个徽章创建一个单独的对象Animation(每个徽章一次请致电AnimationUtils.loadAnimation(...))。

这应该解决问题。