目前一般情况下 在横竖屏情况下 我们会遇到一些问题 例如横竖屏显示ui 比例问题 还有activity重启问题 今天说三个问题 一是横竖屏切换 二是 禁止屏幕旋转
说一下屏幕切换时 的activity 生命周期
onPause()—->onDestroy()—–>onCreate()
先说第一个 横竖屏切换 一般的套路如下
在manifast.xml 中 给当前activity配置 防止activity在屏幕切换时 activity 重建问题
android:configChanges="orientation|keyboardHidden|screenSize"
获取屏幕方向
int orientation = getResources().getConfiguration().orientation; if (orientation == Configuration.ORIENTATION_LANDSCAPE) {
setContentView(R.layout.horizontallayout); } else if (orientation == Configuration.ORIENTATION_PORTRAIT) {
setContentView(R.layout.verticallayout);}
监听屏幕方向 并处理数据
@Override public void onConfigurationChanged(Configuration newConfig) {
// 处理你的数据 super.onConfigurationChanged(newConfig);
}
二 禁止屏幕旋转
第一 要先设置屏幕方向
manifast.xml 设置给a