1

當設備旋轉時,我根據縱向/橫向使用不同的佈局。所以我不能把這個線表現:如何在Android中維護SoftKeyboard和刷新佈局

android:configChanges="orientation|screenSize|keyboardHidden" 

但是,如果用戶在EditText場和鍵盤出來,文字填充在現場,然後他們旋轉裝置,鍵盤皮和文本丟失(令用戶感到沮喪)。

有沒有適當的方法來處理這種情況?

回答

1

你爲什麼不能使用android:configChanges然後覆蓋onConfigurationChanged,然後店無論是在EditText上一個臨時變量,給你打電話UI初始化方法(從的onCreate取出findViewById,並把它放在一個單獨的方法),然後將EditText設置爲temp變量。

下面是一些樣品我做了按鈕

@Override

public void onConfigurationChanged(Configuration newConfig){ 
    super.onConfigurationChanged(newConfig); 
    setContentView(R.layout.main); 
    Log.i("configChange", "configChange");  
    String tmp = connect.getText().toString(); 
    boolean onTmp = on.isEnabled(); 
    boolean offTmp = off.isEnabled(); 
    boolean connTmp = reconnect.isEnabled(); 
    InitializeUI(); 
    connect.setText(tmp); 
    on.setEnabled(onTmp); 
    off.setEnabled(offTmp); 
    reconnect.setEnabled(connTmp); 
} 
+0

我使用的片段。我會把它放在父活動中,還是帶有EditText的片段?順便說一句,好的答案,我明白你在做什麼...... – KickingLettuce 2013-02-21 19:30:17

+0

我其實對Android來說還是比較新的,還沒有和Fragments一起工作過。我正在使用Android Open Accessory Protocol,這是我能夠繞過調用onDestroy和onCreate的輪換的方式,這會弄亂USB配件枚舉。如果整個父級活動都在那裏重新繪製,那麼我的猜測是將要重繪的,如果只有片段將它放在那裏,我認爲。如果你知道哪一個或別人知道,那麼我想知道,以便我可以學習哪一個更好。 – TronicZomB 2013-02-21 19:36:01

+0

@KickingLettuce出於好奇,你有沒有得到這個爲你的問題工作? – TronicZomB 2013-03-06 14:29:02