如何在返回到该活动之前删除编辑文本数据?
说活动A有一个Edittext
,在输入一些信息和点击该特定活动中的按钮时,它会转到活动B。
如何在返回到该活动之前删除编辑文本数据?
论从乙单击后退按钮返回到活动一个,在编辑文字内容保持原样..帮助我得到它删除。
有几种方法可以做到这一点:
1)拆下EditText
数据之前开始ActivityB
2)使用startActivityForResult
在你ActivityA
3启动您ActivityB并覆盖onActivityResult
)覆盖ActivityA onResume
方法,并删除该方法内的EditText
数据。使用这种方法,即使您未启动ActivityB,您的EditText
数据也可能会被刷新,因此请注意Activity的生命周期。
这样做,只是做:
editText.setText("");
请注意,在onResume()中执行此操作也意味着任何中断,例如来电也会刷新数据。 – adnanyousafch
@adnanyousafch,是的,你说得对,我已经编辑我的答案是更精确 – AlexTa
只是打电话startActivity(intent)
方法之前,通过设置editText.setText("");
重置意图设置你的edittext to ("");
EditText name = (EditText)findViewByid(R.id.edittext);
name.settext("Your Name");
Button send = (Button)findViewById(R.id.button);
send.setOnClickListener(new View.OnClickListener(){
public void onClick(View v) {
name.settext("");
Intent activity_b = new Intent(ActivityA.this, ActivityB.class);
startActivity(activity_b)
}
});
之前,或者你也可以做
@Override
public void onResume(){
super.onResume();
name.settext(");
}
editText.setText("");
你可以把上面的代码行两种不同的方式
如果您想在ActivityA来自ActivityB退尽唯一的EditText空,那么只要把它的代码中前行你正在开始ActivityB。
edittext.settext(""); Intent intent = new Intent(ActivityA.this, ActivityB.class); startActivity(intent)
如
onResume()
如果你想涵盖所有不同的情况。无论何时该活动返回,无论是从其他活动还是从后台返回,都会使edittext为空。
希望它能帮助你。
只是把'editText.setText(“”)'。 –