我們發現如果activity從豎屏到橫屏,activity的生命週期會殺死然後在創建,當從橫屏到豎屏是,activity的生命週期會有兩次從殺死到創建,
原因是輸入法的存在。如何使他們一樣
可以在AndroidMenifest.xml的Activity節點配置上android:configChanges="keyboardHidden"
爲了節省內存,可以這樣配置,是它們的生命週期重用
android:configChanges="keyboardHidden|orientation"
如果配置上Android:screenOrientation="landscape"
屏幕會固定
還有一種情況,在onConfigurationChanged方法裏設置不同方向顯示不同的佈局
public void onConfigurationChanged(Configuration newConfig) {
super.onConfigurationChanged(newConfig);
//得到方向屬性
int orientation = newConfig.orientation;
if(orientation == Configuration.ORIENTATION_LANDSCAPE){//水平
setContentView(R.layout.other);
}else if(orientation == Configuration.ORIENTATION_PORTRAIT){//垂直
setContentView(R.layout.main);
}
}