Android横竖屏检测
Android横竖屏检测
应项目要求,我们要实时检测用户横屏还是竖屏,进而分别设计横屏和竖屏的效果。
为得到状态,我们需要在相应的activity中重写一个函数,onConfigurationChanged(Configuration config)
横屏和竖屏切换的时候,默认总是会调用oncreate函数的,这样会造成资源上很大的浪费,为了解决这个问题,我们可以在配置文件中修改相应的Activity属性:Android:configChanges="orientation|keyboardHidden|navigation"
比如:
<activity android:name=".TestApp2"
android:label="@string/app_name" android:configChanges="orientation|keyboardHidden|navigation">
检测横竖屏:
重写函数:
@Override
public void onConfigurationChanged(Configuration config) {
try {
super.onConfigurationChanged(config);
if (this.getResources().getConfiguration().orientation == Configuration.ORIENTATION_LANDSCAPE) {
Toast.makeText(TestApp2.this, "当前是横向",Toast.LENGTH_SHORT).show();
} else if (this.getResources().getConfiguration().orientation == Configuration.ORIENTATION_PORTRAIT) {
Toast.makeText(TestApp2.this, "哈哈,切竖屏",Toast.LENGTH_SHORT).show();
}
} catch (Exception ex) {
}
}
评论暂时关闭