android中判断横屏或者竖屏并改变背景
16lz
2021-01-23
在android中,判断横屏还是竖屏,并且根据方向改变背景,代码如下:
public static int ScreenOrient(Activity activity) { int orient = activity.getRequestedOrientation(); if(orient != ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE && orient != ActivityInfo.SCREEN_ORIENTATION_PORTRAIT) { //寬>高爲橫屏,反正爲豎屏 WindowManager windowManager = activity.getWindowManager(); Display display = windowManager.getDefaultDisplay(); int screenWidth = display.getWidth(); int screenHeight = display.getHeight(); orient = screenWidth < screenHeight ? ActivityInfo.SCREEN_ORIENTATION_PORTRAIT : ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE; } return orient; }
public static void AutoBackground(Activity activity,View view,int Background_v, int Background_h) { int orient=ScreenOrient(activity); if (orient == ActivityInfo.SCREEN_ORIENTATION_PORTRAIT) { //纵向 view.setBackgroundResource(Background_v); }else{ //横向 view.setBackgroundResource(Background_h); } }
其中Background_v是纵向时的背景图,view.setBackgroundResource为横向时的背景图
然后在activity的oncreate 方法 中去调用
LinearLayout layout=(LinearLayout)findViewById(R.id.layout);
//背景自动适应
androidUtil.AutoBackground(this, layout, R.drawable.bg_v, R.drawable.bg_h);
更多相关文章
- Android修改AlertDialog的背景颜色
- Android ListView里设置默认Item的背景颜色
- Android自定义Button背景色,弧度
- Android布局背景颜色设置
- Android利用drawable文件夹自定义控件背景、样式
- Android关于LinearLayout和RelativeLayout背景设置的区别
- Android将ListView逆时针旋转90°实现横向滑动