2016-07-22 100 views
1

當我在縱向模式中選擇一種語言時,它可以正常工作。當我改變方向風景,並回到人像模式默認語言英語被選中。更改方向後,語言會恢復爲英語

我試圖在Android的menifest文件

機器人驗證碼:configChanges =「鍵盤|隱藏|屏幕尺寸|取向

所以任何一個可以建議我如何實現上述要求 Thanx提前

+0

你在哪裏改變語言?系統偏好? 您應該在configChanges – Massimo

+0

上添加「語言環境」,您需要提供一些代碼,但它看起來像是從代碼中以某種方式設置應用程序語言,並且方向更改沒有考慮到這一點 – Korcholis

+0

配置conf = res .getConfiguration(); conf.locale = locale; res.updateConfiguration(conf,dm); – Phoenix

回答

-1

正確的方法是從你的應用程序對象處理它。

public class MyApp extends Application { 

    @Override 
    public void onConfigurationChanged(Configuration newConfig) { 
     super.onConfigurationChanged(newConfig); 
     // Set your locale here... 
    } 
} 
+0

如果我們從活動現場更改它更好,因爲應用程序類解決這個郎,但在我們的環境,我們給定的選項對用戶改變語言這就是爲什麼它能夠更好地處理在活動類 –

+0

@Yogesh Rathi來吧,你的解決方案我們必須在所有活動中處理onConfigurationChanged方法,對嗎? –

+0

沒有親愛的,你可以聲明自己的活動,並在您的自定義活動類 –

0
@Override 
    public void onConfigurationChanged(Configuration newConfig) { 
     super.onConfigurationChanged(newConfig); 
     // Set your locale here... 
    } 
在活動類

添加上面的代碼,當旋轉改變上述方法被調用和語言環境不記得你語言環境人像區域設置是什麼。