2012-12-28 162 views
1

我的Android應用程序被配置爲只能在橫向模式下工作,所以我想讓從我的應用程序中通過意圖創建的電子郵件客戶端也成爲橫幅。可能嗎?Android屏幕定位意圖

這裏是我的代碼:

Intent i = new Intent(Intent.ACTION_SEND); 
i.setType("text/xml"); 
i.putExtra(Intent.EXTRA_EMAIL, new String[]{"[email protected]"}); 
i.putExtra(Intent.EXTRA_SUBJECT, "Feedback"); 
i.putExtra(Intent.EXTRA_TEXT, ""); 
try { 
    Intent chooser_intent = Intent.createChooser(i, "Send e-mail"); 
    startActivity(chooser_intent); 
} catch (android.content.ActivityNotFoundException ex) { 
    Toast.makeText(getApplicationContext(), "E-mail client not found", Toast.LENGTH_LONG).show(); 
} 

回答

3

如果活動的方向在您的應用程序的外部,則無法指定它的方向。如果某個活動對您的應用程序是本地的(即,在您自己的清單文件中定義) - 那麼您可以指定那裏的方向。

底線,你不能控制不是你自己的應用程序的方向(即通過系統意圖調用)。

+0

是的,可能你是對的。 – Sergii

3

在Android清單中的活動添加此android:screenOrientation="landscape"

例如:

<activity android:name=".yourClientAddressActivity" android:screenOrientation="landscape"></activity> 
+0

謝謝,我已經爲我的活動,但如何設置screenOrientation爲非我的應用程序(電子郵件客戶端)的意圖? – Sergii

+1

我認爲它不可能.. –

1

如果屏幕設備已經處於橫向方向,那麼如果它支持它的新的電子郵件的活動應該使用它;否則,它將進入肖像模式,但之後你無法做任何事情,因爲它首先不支持橫向模式。