2012-11-14 46 views
2

假設我在非DPI主佈局資源文件夾中有一個佈局,並且該佈局執行hdpi/mdpi/ldpi文件夾中存在的子佈局的<include>。我可以期望最終的充氣佈局根據設備DPI聚合h/m/l-dpi子佈局,就像「完整」佈局一樣嗎?對於完整的佈局,是否將包含Android佈局在hdpi/mdpi/ldpi佈局之間進行選擇?

謝謝!

+0

你在模擬器上試過這個嗎? :D –

+0

爲什麼你有不同的*佈局*的屏幕密度? – CommonsWare

+0

你真的是指*佈局*嗎? –

回答

0

雖然在帖子發佈時我沒有機會測試帖子的命題,但我後來有機會這樣做,因此會回答我自己的問題,因爲沒有其他人這麼做了。

是,以下情形作品如預期(在API級別8測試):

佈局/ main.xml中:

... <include layout="@layout/included"/> ... 

佈局/ included.xml:

<merge xmlns:android="http://schemas.android.com/apk/res/android"> 
    <Button 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="GENERIC included fragment"/> 
</merge> 

layout-ldpi/included.xml:

<merge xmlns:android="http://schemas.android.com/apk/res/android"> 
    <Button 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="LOW-DPI included fragment"/> 
</merge> 

在QVGA設備上運行應用程序呈現一個視圖,其中包含的部分來自LDPI目錄,而非LDPI設備從佈局目錄中抓取默認的部分。