hat是否能在屏幕上显示更改的正确方法?
@Override
protected void onResume()
{
super.onResume();
mMainController.grads(mLytHowToPlay, true, FaceTypes.FACEIT, GradTypes.NONE, 8);
mLytHowToPlay.requestLayout();
mLytHowToPlay.invalidate();
}
上面的grads()方法调用是以递归方式处理mLytHowToPlay的子节点并对其Paint对象进行更改的方法。我也尝试过onCreate()和onStart()的这个序列具有相同的效果 - 直到Activity被导航离开然后再导航回来时,变化才会显示。
谢谢!
答案 0 :(得分:0)
在onCreate()方法结束时,创建一个如下所示的线程。
Handler mHandler = new Handler();
mHandler.postDelayed(new Runnable() {
public void run() {
mMainController.grads(mLytHowToPlay, true, FaceTypes.FACEIT, GradTypes.NONE, 8);
mLytHowToPlay.requestLayout();
mLytHowToPlay.invalidate();
}
},2000);
这样做是在创建应用程序后等待2秒,然后运行您的过程。你应该能够玩时间并降低它或根据你的需要提高它。
答案 1 :(得分:0)
请参阅Simon的回答here以及我对它的评论。我一直在寻找的实际上是在布局过程完成后触发的回调。