如何清除意图文本?

How to clear the intent text?

我在 Activity A 中有一个 reset button 并且它工作正常,因为它可以清除所有文本并在 save [=13= 时显示 null ] 在 Activity B 被点击。但这只有在传递给 B 之前 textView 中没有任何内容的情况下才有效。

以下情况无效

在ActivityA中,输入“Project 123',点击下一步button去B。然后我又回到ActivityA,点击重置按钮清除"Project 123"。完成后转到 Activity B 并单击提交按钮。它显示 "Project 123" 而不是 "null"...

Activity一个

private TextView c;
String result; // 123
String name; // project

reset=(Button)claims.findViewById(R.id.button14); // reset button
Button button = (Button) claims.findViewById(R.id.button8); //next button

reset.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        c.setText("");
        d.setText("");
        e.setText("");
        f.setText("");
        g.setText("");
        h.setText("");
    }
});

button.setOnClickListener(new View.OnClickListener() {
    public void onClick(View arg0) {
        Intent intent = new Intent(getActivity().getApplicationContext(), B.class);
        if(c!=null){
            intent.putExtra("name", name);
            intent.putExtra("result", result);
        }
    });
    return A;
}

ActivityB

Name=getIntent().getExtras().getString("name");
Result=getIntent().getExtras().getString("result");
save=(Button)findViewById(R.id.button8);
save.setOnClickListener(new View.OnClickListener(){
    @Override
    public void onClick(View v){
        if((Name!=null)&&(Result!=null)){
            Toast.makeText(getApplicationContext(), Name+Result, Toast.LENGTH_LONG).show();
        }else{
            Toast.makeText(getApplicationContext(),"null", Toast.LENGTH_LONG).show();
        }
    }
});

实际上,名称不是空的,而是空字符串"" 尝试在 B activity.

中将 Name != null 替换为 !TextUtils.isEmpty()

这是因为您只清除了 setText 而没有清除字符串。

 reset.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View v) {
               c.setText("");
                name="";
                result="";


            }
        });

您必须在重置方法中添加 name=""result=""。它应该有效。

请参考clear a value from a string android