사용자가 기기를 회전 할 때 방향을 가로 모드로 변경하고 싶지 않은 Android 앱을 개발 중입니다. 또한 잠금 방향을 휴대폰에서는 세로 모드로, 태블릿에서는 가로 모드로 설정하고 싶습니다. 가능하다면 어떻게해야합니까? 감사.
답변
파일 의 활동 요소 내에 아래 속성을 정의하기 만하면 AndroidManifest.xml
됩니다. 방향을 세로로 제한합니다.
android : screenOrientation = “세로”
예:
<activity
android:name="com.example.demo_spinner.MainActivity"
android:label="@string/app_name"
android:screenOrientation="portrait" >
</activity>
추가로, 아래 Eduard Luca의 설명 screenOrientation="sensorPortrait"
에 따라 180도 회전을 활성화하려는 경우 에도 사용할 수 있습니다 .
답변
당신은 android:screenOrientation="portrait"
당신의 AndroidManifest.xml
. 이것은 <activity>
태그 에서 수행됩니다 .
또한 Android 개발자 가이드에는 다음과 같이 명시되어 있습니다.
[…] 또한 애플리케이션에 요소와 함께 세로 또는 가로 방향이 필요함을 명시 적으로 선언해야합니다. 예 :
<uses-feature android:name="android.hardware.screen.portrait" />
.
답변
문제를 완전히 해결하지 못하는 답변을 수락했음을 알 수 있습니다.
android:screenOrientation="portrait"
이렇게하면 앱이 휴대폰과 태블릿 모두에서 세로로 표시됩니다.
다음을 사용하여 앱을 장치의 “선호”방향으로 강제 설정할 수 있습니다.
android:screenOrientation="nosensor"
이로 인해 대부분의 휴대 전화에서는 앱이 세로로, 태블릿에서는 가로로 앱이 강제 실행됩니다. 가로 모드 용으로 설계된 키패드가있는 전화기가 많이 있습니다. 앱을 세로로 강제하면 이러한 장치에서 거의 사용할 수 없게 될 수 있습니다. Android는 최근 다른 유형의 기기로도 이전하고 있습니다. 장치가 원하는 방향을 선택하도록하는 것이 가장 좋습니다.
답변
프로그래밍 방식으로 태블릿인지 전화인지 확인해야 할 수도 있습니다. 먼저 확인 장치가 전화인지 태블릿인지 확인해야합니다.
그때……
if(isTablet)
{
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
}else
{
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
}
답변
<activity android:name=".yourActivity"
android:screenOrientation="portrait" ... />
주요 활동에 추가하고
android:configChanges="keyboardHidden"
키보드가 호출 될 때 프로그램이 모드를 변경하지 못하도록합니다.
답변
활동 태그 아래의 Manifest 파일에서 화면 방향을 세로로 설정하십시오.
답변
android:screenOrientation="locked"
실제 활동 을 <application>
위해 모든 앱에서 <activity>