2017-06-16 1 views
0
package com.anilkrishna.cricketscores; 

import android.support.v7.app.AppCompatActivity; 
import android.os.Bundle; 
import android.view.View; 
import android.widget.TextView; 

public class MainActivity extends AppCompatActivity { 
    TextView start; 
    TextView credit; 
    boolean flag=false; 
    public void startApp() 
    { 
     start=(TextView)findViewById(R.id.start); 
     start.animate().alpha(1).scaleX(1f).scaleY(1f).setDuration(3000); 
     credit=(TextView)findViewById(R.id.credit); 
     credit.animate().alpha(1).scaleX(1f).scaleY(1f).setDuration(3000); 
     credit.animate().alpha(1).scaleX(1f).scaleY(1f).setDuration(2000); 
     start.setVisibility(View.GONE); 
    } 
    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 
     startApp(); 
    } 
} 

私の要件は、アプリが消え、その後、textviewsを表示するアニメーション化しなければならないということです期待通りに動作していないが、アニメーションは起きていないとTextViewsは、アプリが起動し、一度表示されません。setVisibilty()

答えて

1

アニメーション化する前にGONEに設定しています。アクティビティにAnimation.AnimationListenerを実装し、次にonAnimationEndメソッドで可視性を設定することを検討してください。

public class MainActivity extends AppCompatActivity implements Animation.AnimationListener { 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    animation = AnimationUtils.loadAnimation(this, R.anim.some_animation); 
    animation.setAnimationListener(this); 

} 

@Override 
protected void onStart() { 
    super.onStart(); 
    start.startAnimation(animation); 
} 

@Override 
public void onAnimationStart(Animation animation) { 

} 

@Override 
public void onAnimationEnd(Animation animation) { 
    start.setVisibility(Visibility.GONE); 
} 

@Override 
public void onAnimationRepeat(Animation animation) { 

} 
} 
+0

ありがとうございます!その間、私はcountDownTimersを使って手動でアニメーションを設定しました。あなたはそのように行くことの問題点を挙げてください。 –