Java 尝试读取UI以持久化活动数据
由于我的应用程序没有任何未由UI表示的数据,因此我尝试读取UI小部件,以便在屏幕旋转等事件发生时恢复底层“模型”对象的状态。它似乎对EditText不起作用,但对微调器起作用,这似乎很奇怪。以下是一些代码片段:Java 尝试读取UI以持久化活动数据,java,android,Java,Android,由于我的应用程序没有任何未由UI表示的数据,因此我尝试读取UI小部件,以便在屏幕旋转等事件发生时恢复底层“模型”对象的状态。它似乎对EditText不起作用,但对微调器起作用,这似乎很奇怪。以下是一些代码片段: protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); ..
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
....
metalSpinner = (Spinner) findViewById(R.id.metal_spinner);
....
lengthText = (EditText) findViewById(R.id.length_edittext);
....
createAndInitializeModel();
}
private void createAndInitializeModel() {
vdropModel = new VdropModel();
....
String al = (String) (metalSpinner.getSelectedItem());
vdropModel.setAlum(al.equals("Aluminum"));
....
if (!(lengthText.getText().toString().equals(""))) {
vdropModel.setLengthInFeet(Double.parseDouble(lengthText.getText()
.toString()));
}
}
由于某些我并不清楚的原因,createAndInitializeModel()中的“if”语句在屏幕方向发生更改后,即使小部件仍在显示一个值,并且vdropModel也不会恢复,其计算结果始终为false。但是,微调器小部件中的值会被恢复。这对我来说没有意义,有什么想法吗?在清单中将活动的配置更改设置为
android:configChanges="orientation"