我想在创建活动后立即开始制作动画。问题是,我必须在屏幕上显示所有内容后调用该方法,比如第一次显示后的一秒钟。
换句话说,我正在寻找一个在onCreate()之后立即执行但在显示活动之后执行的方法:
谢谢!
答案 0 :(得分:1)
假设您在layout
中设置了onCreate()
,看起来您可以在动画对象上使用setStartTime(long millis)。
public void onCreate(...)
{
super.onCreate(...);
setContentView(R.layout.your_layout);
// do whatever else you need to
// create your animation
animation.setStartTime(1000); // should start it in one second
}
答案 1 :(得分:1)
您不能假设GUI已在onCreate()中绘制。事实上,它往往不是。
当最终在屏幕上呈现所有内容时,最好的方法是:
@Override
public void onWindowFocusChanged (boolean hasFocus) { ... }
把你的东西放在计时器里。
答案 2 :(得分:1)
您可以在onPostResume()开始动画,该动画在onResume()完成后调用。