Android手機『方向切换』『滑出鍵盘』, Android會認為配置改變, 将销毁并重啟程式. 調用activity:onCreate()會大量占用CPU時間. 係游戲造成500ms以上都唔可接受. 編輯『AndroidManifest.xml』係『<activity>』元素『configChanges』属加入『orientation方向切换』同『keyboardHidden滑出鍵盘』『keyboard插入键盘』. 係MainActivity重载onConfigurationChanged ()自己處理, 達置 『方向切换』『滑出鍵盘』冇需再次调周onCreate().
AndroidManifest.xml |
<activity
android:name=”.MainActivity” android:configChanges=”keyboard|keyboardHidden|orientation”> </activity> |
MainActivity |
@Override
public void onConfigurationChanged(Configuration newConfig) { if(newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE) {// 横向 } else if(newConfig.orientation == Configuration.ORIENTATION_PORTRAIT) {// 纵向 } if(newConfig.keyboardHidden == Configuration.KEYBOARDHIDDEN_NO ) {// 显示键盘 } super.onConfigurationChanged(newConfig); } |