Android'de yatay mod nasıl devre dışı bırakılır?

Android uygulamamdaki bazı görünümler için yatay modu nasıl devre dışı bırakabilirim?

Çözüm

AndroidManifest.xml'deki aktiviteye android:screenOrientation="portrait" ekleyin. Örneğin:

EDIT: Bu çok popüler bir cevap haline geldiğinden beri kendimi çok suçlu hissediyorum çünkü portreyi zorlamak, sıklıkla uygulandığı sorunlar için nadiren doğru çözümdür.
Zorlanmış portre ile ilgili başlıca uyarılar:

  • Bu sizi faaliyet hakkında düşünme zorunluluğundan kurtarmaz yaşam döngüsü olayları veya durumu düzgün kaydetme/geri yükleme. Çok sayıda uygulama rotasyonunun yanı sıra bir etkinliği tetikleyebilecek şeyler çoklu görev gibi kaçınılmaz şeyler de dahil olmak üzere yıkım/yeniden yaratma. Kısayol yoktur; demetleri ve retainInstance parçalarını kullanmayı öğrenin.
  • Oldukça tekdüze iPhone deneyiminin aksine, portrenin açıkça popüler yönelim olmadığı bazı cihazlar olduğunu unutmayın. Kullanıcılar Nvidia Shield gibi donanım klavyesi veya oyun pedi olan cihazlarda, Chromebook, foldables veya Samsung DeX üzerindeyken, portreyi zorlamak uygulama deneyiminizi ya sınırlayıcı ya da dev bir kullanılabilirlik sorunu haline getirebilir. Uygulamanızın diğer yönleri desteklemek için olumsuz bir deneyime yol açacak güçlü bir UX argümanı yoksa, muhtemelen manzarayı zorlamamalısınız. Burada "bu, her zaman sabit bir donanım yuvasında kullanılan belirli bir tablet modeli için bir yazar kasa uygulamasıdır.&quot gibi şeylerden bahsediyorum;

Dolayısıyla çoğu uygulama, kullanıcının uygulamanızla nasıl etkileşim kurmak istediğine telefon sensörlerinin, yazılımın ve fiziksel yapılandırmanın kendi karar vermesine izin vermelidir. Yine de, kullanım durumunuzda `sensör' yöneliminin varsayılan davranışından memnun değilseniz, düşünmek isteyebileceğiniz birkaç durum olabilir:

  • Ana endişeniz, cihazın sensörlerinin ve yazılımının iyi başa çıkamayacağını düşündüğünüz etkinlik ortasında kazara yön değişiklikleri ise (örneğin, eğim tabanlı bir oyunda) yatay ve dikey desteği desteklemeyi düşünün, ancak yönlendirme için nosensor kullanın. Bu, çoğu tablette yatay ve çoğu telefonda dikey yönü zorlar, ancak yine de çoğu "normal" uygulama için bunu tavsiye etmem (bazı kullanıcılar telefonlarında yatay yazılım klavyesinde yazmayı sever ve birçok tablet kullanıcısı dikey olarak okur - ve onlara izin vermelisiniz).
  • Eğer bir sebepten dolayı hala portreye zorlamanız gerekiyorsa, Android 2.3+ için sensorPortrait portreden daha iyi olabilir; bu, tablet kullanımında oldukça yaygın olan baş aşağı portreye izin verir.
Yorumlar (12)

Bu yazıyı okuyana kadar AndroidManifest.xml dosya anahtarının farkında değildim, bu yüzden uygulamalarımda bunun yerine bunu kullandım:

setRequestedOrientation (ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);     //  Fixed Portrait orientation
Yorumlar (3)

/platform/androiddizinindeAndroidManifest.xmldosyasını oluşturun (oluşturulan dosyadan kopyalayarak). Ardından TÜM etkinlik öğelerineandroid:screenOrientation="portrait`" ekleyin.

Yorumlar (0)