2012-06-12 30 views
1

我正在開發針對Android 4+的應用,該應用的行爲因屏幕大小而異。更多詳情:Android模擬器,使用screenLayout創建和AVD = SIZE_LARGE

  • 在中/小型屏幕上,方向被強制在縱向上,並且應用程序通過切換活動來運行。
  • 在大型/ x型大屏幕上,在landscpe上強制方向,屏幕分爲兩部分,菜單片段在左側,其他片段在右側。

問題是,我無法創建一個被檢測爲大屏幕的AVD。

剛剛在640x1024分辨率,240密度的AVD上進行測試,此代碼從未進入第一個IF。

@Override 
public void onCreate(Bundle savedInstanceState) { 

    super.onCreate(savedInstanceState); 

    // forcing layout to landscape if display is LARGE or more 
    if ((getResources().getConfiguration().screenLayout & Configuration.SCREENLAYOUT_SIZE_MASK) == Configuration.SCREENLAYOUT_SIZE_LARGE || 
      (getResources().getConfiguration().screenLayout & Configuration.SCREENLAYOUT_SIZE_MASK) == Configuration.SCREENLAYOUT_SIZE_XLARGE) { 
     setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE); 
     dualPane = true; 
    } 
    else { 
     setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT); 
     dualPane = false; 
    } 
} 

任何幫助?

回答

0

假設你已經在Android SDK插件安裝Eclipse,您可以創建一個使用唯一的大布局的仿真器:

  1. 在Eclipse中,點擊綠色的小機器人按鈕(「打開 Android的虛擬設備監視器「)。
  2. 新建...
  3. 名稱= [無論]
  4. 目標= 的Android 4.x的
  5. CPU/ABI = [無論]但英特爾模擬器往往更好/更快。
  6. 分辨率= 1024 x 600.這是重要的部分。不要使用600 * 1024 它必須是一個風景設備(如「迷你平板電腦」)
  7. 同樣重要的:設置密度手動MDPI:點擊「抽象液晶密度」 - >更改MDPI的數字爲160。
  8. 創建AVD

現在啓動設備。它只會使用LARGE佈局(Configuration.SCREENLAYOUT_SIZE_LARGE)。使用Ctrl + F11旋轉至肖像。肖像模式也將使用大型佈局。