我有一個android應用程序,我想知道是否可以在橫向和縱向模式下都有1個佈局(1個佈局xml文件)。但是我想爲每種模式提供不同的背景?那可能嗎?我需要2個XML文件點到不同的背景圖片嗎?或者我可以實現我想要使用1個XML文件?如何在橫向模式和縱向模式之間使用2種不同的背景
謝謝。
我有一個android應用程序,我想知道是否可以在橫向和縱向模式下都有1個佈局(1個佈局xml文件)。但是我想爲每種模式提供不同的背景?那可能嗎?我需要2個XML文件點到不同的背景圖片嗎?或者我可以實現我想要使用1個XML文件?如何在橫向模式和縱向模式之間使用2種不同的背景
謝謝。
如果你願意用代碼來實現這一點,你可以嘗試將像
View view = (View) findViewById(R.id.background_carrying_view);
int orientation = getResources().getConfiguration().orientation;
if(orientation == Configuration.ORIENTATION_LANDSCAPE) {
view.setBackgroundResource (R.drawable.background_land);
} else {
view.setBackgroundResource (R.drawable.background_port);
}
東西到你的onCreate()和/或onConfigurationChange()。
使用此方法,您可以對橫向和縱向使用相同的佈局。
我已經通過創建drawable-land-hdpi文件夾並將我的風景背景複製到其中。
我不想改變我的代碼,我只是有一個XML佈局文件和兩個不同的background.jpg圖像在兩個文件夾繪製,陸,華電國際和繪製,華電國際。
只要有人遇到相同的問題:爲了使用它,你一定不能有android:configChanges =「orientation」,否則當前活動不會被銷燬,並且資源會從相應的目錄重新初始化......這裏是您可以使用的所有修飾符的描述http://developer.android.com/guide /topics/resources/providing-resources.html – 2012-06-04 13:54:06
android:configChanges =「orientation」在您的活動的清單中設置 – 2014-01-17 04:32:03
完美的工作 - 謝謝! – mpemburn 2014-03-01 15:03:43
這有效,但我個人使用'查看視圖= this.getWindow()。getDecorView();' – Squonk 2011-04-05 22:17:31
哦,是的。你是對的。 – Cephron 2011-04-06 03:22:50
你總是可以定義兩個單獨的xml佈局。一個用於肖像,另一個用於景觀。 – zzzzzzzzzzzzzzzzzzzzzzzzzzzzzz 2012-02-12 10:18:23