1

我正在使用imageView來顯示圖像。後來我使用imageView.setImage(bitmap)爲視圖設置了不同的圖像。現在,如果我將屏幕的方向從縱向更改爲橫向,imageview將顯示舊圖像而不是我設置的新圖像。有人可以告訴我爲什麼會發生這種情況,以及如何克服這種情況。改變屏幕方向的圖像視圖的奇怪行爲

回答

2

正常情況下,當你改變你的方向時,活動將重新創建(調用onCreate())。
如果你有兩個方向只有一個XML,你可以在清單文件由
1.將阻止此活動作爲android:configChanges="orientation"

<activity android:name=".Youractivityname" 
     android:configChanges="orientation"/> 

2.然後在我們的活動類中重寫此

public class Youractivityname extends Activity { 

    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
      // all your codes 
     } 

    @Override 
     public void onConfigurationChanged(Configuration newConfig) { 
      super.onConfigurationChanged(newConfig); 

     } 
} 

希望現在你很清楚

+0

對不起,但我不明白這是如何有用。我需要在這種方法做什麼。你可以請給我更多的細節 – chethan 2011-01-12 10:52:04

+0

檢查,我已編輯它 – 2011-01-12 11:02:00

0

默認情況下,在方向改變時,活動被破壞並重新創建,所以如果你設置了第一個位圖創建,並且t如果在onCreate中設置第一個圖像的方向改變,但是如果改變圖像的代碼沒有再次調用,那麼圖像不會再改變。

0

在清單中使用android:configChanges="orientation"是一種不好的做法。 This是處理方向更改的推薦方法。