package com.has.base;
import android.app.Activity;
import android.app.FragmentManager;
import android.app.FragmentTransaction;
import android.os.Bundle;
import android.view.Display;
import android.view.WindowManager;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
int height = getWindowManager().getDefaultDisplay().getHeight();
int width = getWindowManager().getDefaultDisplay().getWidth();
fragment1 fg1 = new fragment1();
fragment2 fg2 = new fragment2();
FragmentManager fm = getFragmentManager();
FragmentTransaction ft = fm.beginTransaction();
if (height > width) {
ft.replace(android.R.id.content, fg1);
} else {
ft.replace(android.R.id.content, fg2);
}
ft.commit();
}
}
功能:按Ctrl+F11切换横屏竖屏,加载不同背景颜色Fragment
问题:刚打开应用能加载Fragment1,显示了对应的颜色,但是当我切换到横屏的时候不能显示另外一种颜色
你是不是设置了 Activity 自己处理横竖屏切换事件,因为一般而言,如果进行了横竖屏切换,会导致 activity recreate,所以不可能出现背景颜色不同,如果是那样,你就自己在 onConfigurationCHanged()里面对背景色做处理吧