我正在开发一个数据输入系统,用户可以在其中保存,搜索和更新数据。在这个活动中,我使用EditTexts,微调器和一个按钮(搜索Clinic Names)。当用户完成填充那些EditTexts和微调器时,他可以使用Button搜索Clinic。此按钮将触发另一个活动的意图。
另一个活动有一个EditText(带有TextFilters,可以搜索Clinic)和一个ListView,它在搜索时显示结果。当结果显示时,用户可以单击ListView项目,这将触发上一个活动,并将诊所名称填写到分配给它的EditText。
我的问题是当用户点击ListView项目并转到上一个活动时,来自EditTexts和Spinners的那些数据被清除了!
I want to happen is that, when I search for Clinic Name and goes to the another activity, those data that was already filled-out
的 will not be cleared or lost
.
MainActivity.java
//Getting clinic address
txt_DClinic.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
Intent myIntent = new Intent(getApplicationContext(), SearchClinicActivity.class);
startActivity(myIntent);
}
});
SearchClinicActivity.java
listView.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> listView, View view,
int position, long id) {
TextView tv_clinicId = (TextView) view.findViewById(R.id.textviewId);
String clinicID = tv_clinicId.getText().toString();
Intent intent = new Intent(view.getContext(), MainActivity.class);
intent.putExtra("clinic_id", clinicID);
intent.putExtra("signal", "2");
intent.putExtra("from", "SearchClinic");
intent.putExtra("LoginOrSearch", "ImSearchClinic");
finish();
view.getContext().startActivity(intent);
}
});
答案 0 :(得分:1)
当您点击列表项并打开意图时。将标志设置为意图。
intent.setFlag(Intent.FLAG_ACTIVITY_LAUNCHED_FROM_HISTORY);
并查看其是否正常工作。
如果它不是尝试一件事就是那样。你是故意传递额外的东西。那时传递edittext的值和微调器的项目号。并且在onCreate方法的主要活动中设置了edittext的文本和额外的。并为微调器设置选定的值。
edtTxt.settext(getIntent().getExtras().get("Text"));
sp.setSelection(getIntent().getExtras().get("Value"));
希望它能帮助!!!
答案 1 :(得分:0)
致电setSaveEnabled(true)
或将android:saveEnabled="true"
添加到您希望保留数据的视图布局中。
MyEditText.setSaveEnabled(true);
或
<EditText
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:saveEnabled="true"/>
Spinner或任何其他需要保留数据的视图相同。