// -------------------------------- Android 屏幕横竖问题 private int width,height; // Setup activity layout @Override protected void onCreate (Bundle savedInstanceState) { requestWindowFeature(Window.FEATURE_NO_TITLE); super.onCreate(savedInstanceState); getWindow().takeSurface(null); setTheme(android.R.style.Theme_NoTitleBar_Fullscreen); getWindow().setFormat(PixelFormat.RGB_565); mUnityPlayer = new UnityPlayer(this); if (mUnityPlayer.getSettings ().getBoolean ("hide_status_bar", true)) getWindow ().setFlags (WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); setContentView(mUnityPlayer); mUnityPlayer.requestFocus(); //保存一下游戏屏幕的宽和高 DisplayMetrics dm = getResources().getDisplayMetrics(); width = dm.widthPixels; height = dm.heightPixels; } // This ensures the layout will be correct. @Override public void onConfigurationChanged(Configuration newConfig) { super.onConfigurationChanged(newConfig); //在这里强制设置一下屏幕的宽和高 mUnityPlayer.getView().getLayoutParams().width = width; mUnityPlayer.getView().getLayoutParams().height = height; Log.v("unity", width+" " + height ); mUnityPlayer.configurationChanged(newConfig); } |
|
来自: tiancaiwrk > 《Unity3d》