آموزش برنامه نویسی اندروید (Android)
۴۱۹ آموزش
نمایش دسته بندی ها (۴۱۹ آموزش)

غیرفعال کردن چرخش خودکار در برنامه اندروید، هنگام چرخاندن گوشی موبایل (برنامه اندروید یا یک Activity ، همیشه در حالت عمودی (portrait) یا حالت افقی (landscape) باشند)

معمولا زمانی که کاربر، گوشی موبایل خود را می چرخاند، برنامه اندروید نیز به صورت خودکار، چرخیده و حالت عوض می کند (مگر اینکه کاربر این امکان را در گوشی موبایل خود از کار انداخته باشد). اما ممکن است که خود ما بخواهیم که تعیین کنیم، چرخش خودکار برنامه اندرویدی که می سازیم، غیرفعال باشد (برنامه اندروید نچرخد).

غیرفعال کردن چرخش خودکار در برنامه اندروید، هنگام چرخاندن گوشی موبایل (برنامه اندروید یا یک Activity ، همیشه در حالت عمودی (portrait) یا حالت افقی (landscape) باشند)
گوشی در دو حالت عمودی (portrait) و افقی (landscape)

در برنامه eclipse ، ابتدا یک پروژه اندروید با نام Kelidestan بسازید (نام package را برابر com.example.kelidestan انتخاب کنید. نام activity اصلی را برابر Activity1 انتخاب کنید).

برای عدم چرخش برنامه اندروید، ابتدا فایل AndroidManiseft.xml را باز می کنیم. کدهای درون این فایل، به صورت زیر می باشد :


<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
     package="com.example.kelidestan"
     android:versionCode="1"
     android:versionName="1.0" >

     <uses-sdk
         android:minSdkVersion="8"
         android:targetSdkVersion="17" />

     <application
         android:allowBackup="true"
         android:icon="@drawable/ic_launcher"
         android:label="@string/app_name"
         android:theme="@style/AppTheme" >
         <activity
             android:name="com.example.kelidestan.Activity1"
             android:label="@string/app_name" >
             <intent-filter>
                 <action android:name="android.intent.action.MAIN" />

                 <category android:name="android.intent.category.LAUNCHER" />
             </intent-filter>
         </activity>
     </application>

</manifest>

باید یکی از دو کد زیر را به کدهای نوشته شده برای activity اضافه کنیم :


android:screenOrientation="landscape"
android:configChanges="orientation|keyboardHidden"

یا :


android:screenOrientation="portrait"
android:configChanges="orientation|keyboardHidden"

هر یک از این دو کد، تعیین می کند که آن activity ، همیشه در حالت landscape نمایش داده شود یا اینکه همیشه در حالت portrait .

این بخش از کدها، قسمتی از کدهای activity است که می خواهیم آن را تغییر بدهیم :


<activity
              android:name="com.example.kelidestan.Activity1"
              android:label="@string/app_name" >

این کدها را به صورت زیر تغییر می دهیم :


<activity
              android:name="com.example.kelidestan.Activity1"
              android:label="@string/app_name"
              android:screenOrientation="portrait"
              android:configChanges="orientation|keyboardHidden" >

بنابراین، activity مورد نظر، همیشه به صورت portrait نمایش داده خواهد شد.

ایجاد امکان چرخش 180 درجه ای :

در مواردی که ذکر کردیم، چرخش 180 درجه ای امکان پذیر نمی باشد. چنانچه بخواهیم که چرخش 180 درجه ای نیز امکان پذیر باشد، باید برای حالت افقی (landscape)، کد زیر را بنویسیم (به جای landscape ، عبارت sensorLandscape نوشته می شود) :


android:screenOrientation="sensorLandscape"
android:configChanges="orientation|keyboardHidden"
نویسنده علیرضا گلمکانی
شماره کلید 221
گزینه ها
به اشتراک گذاری (Share) در شبکه های اجتماعی
نظرات 1 1 0
حمیدرضا
۱۳۹۵/۱۰/۲۱
۰۹:۵۴

سلام
چطوری میشه جلوگیری کنی ازساخته شدن اپ کمپت همراه با ایجاد یک پروژه جدید؟

یا وقتی که ایجاد شد ، چه جوری پاکش کنیم که توی کد ها اشکال پیش نیاد؟

ارسال نظر جدید (بدون نیاز به عضو بودن در وب سایت)