2
我想要做的應用程序不會改變用戶界面,即使屏幕更改爲縱向或橫向。怎麼做?如何解決黑莓垂直和縱向屏幕的對齊問題?
我想要做的應用程序不會改變用戶界面,即使屏幕更改爲縱向或橫向。怎麼做?如何解決黑莓垂直和縱向屏幕的對齊問題?
我做了一個靜態方法,在我的圖書館的一類:
public static void disableOrientationChange()
{
// force app to use only portrait mode
int directions = Display.DIRECTION_NORTH;
UiEngineInstance engineInstance = Ui.getUiEngineInstance();
if (engineInstance != null)
{
engineInstance.setAcceptableDirections(directions);
}
}
訣竅是此代碼只適用於它運行後創建的畫面。因此,您必須在顯示第一個屏幕之前運行代碼。
我在調用enterEventDispatcher()
之前,從我的Application.main(String args)
方法中調用此方法。
public static void main(String[] args)
{
MyApp app = new MyApp();
/*
* BlackBerry OS 5.0.0
* Disable screen orientation changes
*/
ScreenUtils.disableOrientationChange();
// enters the event processing loop thread if required
if (!app.isHandlingEvents())
{
app.enterEventDispatcher();
}
}
您可以使用此代碼將方向設置爲縱向。之後,即使設備處於橫向狀態,方向也不會改變。
Ui.getUiEngineInstance().setAcceptableDirections(Display.DIRECTION_PORTRAIT);