screen-orientation navigation drawer - أريد أن يتم تشغيل تطبيق Android الخاص بي في الوضع الرأسي فقط؟
3
Answers
شرح toolbar simple
أريد أن يتم تشغيل تطبيق Android الخاص بي في الوضع الرأسي فقط؟ كيف أقوم بذلك؟
257 votes
android
وظيفة قديمة وأنا أعلم. لتشغيل تطبيقك دائمًا في الوضع الرأسي حتى عندما يكون التوجيه أو يتم تبديله وما إلى ذلك (على سبيل المثال على الأجهزة اللوحية) صممت هذه الوظيفة التي يتم استخدامها لتعيين الجهاز في الاتجاه الصحيح دون الحاجة إلى معرفة كيفية عرض الصورة والشكل يتم تنظيم الميزات على الجهاز.
private void initActivityScreenOrientPortrait()
{
// Avoid screen rotations (use the manifests android:screenOrientation setting)
// Set this to nosensor or potrait
// Set window fullscreen
this.activity.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
DisplayMetrics metrics = new DisplayMetrics();
this.activity.getWindowManager().getDefaultDisplay().getMetrics(metrics);
// Test if it is VISUAL in portrait mode by simply checking it's size
boolean bIsVisualPortrait = ( metrics.heightPixels >= metrics.widthPixels );
if( !bIsVisualPortrait )
{
// Swap the orientation to match the VISUAL portrait mode
if( this.activity.getResources().getConfiguration().orientation == Configuration.ORIENTATION_PORTRAIT )
{ this.activity.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE); }
else { this.activity.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT ); }
}
else { this.activity.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_NOSENSOR); }
}
يعمل كالسحر!
إشعار: قم بتغيير this.activity
النشاط. من النشاط الخاص بك أو إضافته إلى النشاط الرئيسي وإزالة هذا. this.activity
؛-)
android1
255
في البيان ، عيّن هذا لجميع أنشطتك:
<activity android:name=".YourActivity"
android:configChanges="orientation"
android:screenOrientation="portrait"/>
android2
254