【发布时间】:2019-10-11 10:01:06
【问题描述】:
有什么方法可以强制框架调用我的片段的onCreateOptionsMenu 方法。
我的问题是我正在使用 onResume() 方法做一些工作,这需要一些时间。
@Override
protected void onResume() {
Log.d(TAG,"onResume");
super.onResume();
//some work
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
Log.d(TAG,"onCreateOptionsMenu start");
menu.add(Menu.NONE,132332,0,"ABCD").setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS);
menu.add(Menu.NONE,132332,0,"ABC").setShowAsAction(MenuItem.SHOW_AS_ACTION_NEVER);
Log.d(TAG,"onCreateOptionsMenu end");
return super.onCreateOptionsMenu(menu);
}
我观察到的是onCreateOptionsMenu 在onResume() 方法完成后经过一些延迟(如1 秒)后被调用。这会导致在 UI 上显示选项菜单时出现少许延迟。
那么,有没有办法强制框架调用我的片段的onCreateOptionsMenu 方法。我在互联网上搜索过,但没有找到任何答案。
【问题讨论】:
-
“我的问题是我在 onResume() 方法中做一些工作,这需要一些时间。” -- 将该工作移至后台线程。如果
onResume()花费的时间超过 1 毫秒,“你做错了”。
标签: java android android-fragments activity-lifecycle android-10.0