我有2个活动A和B,在活动A中有1个EditText和1个按钮。该按钮用于调用活动B。我只是想知道,当用户第一次在EditText中输入一些文本时,然后用户调用活动B,然后返回活动A(A> B>然后返回A),让用户输入需要任何帮助谢谢:D

这是我对活动A的代码(CreateData是活动A)

public class CreateData extends Activity implements OnClickListener{
    private Button buttonAdd;
    private EditText edNama_sma;
    private String nama;

    @Override
    public void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.create_data);
        edNama_sma     = (EditText) findViewById(R.id.nama_sma);
        buttonAdd      = (Button) findViewById(R.id.buttom_add_koordinat);
        buttonAdd.setOnClickListener(this);
    }

    @Override
    public void onClick(View v)
    {
        nama  = edNama_sma.getText().toString().toUpperCase().trim();
        // TODO Auto-generated method stub
        switch(v.getId())
        {
            case R.id.buttom_add_koordinat:
            Intent c = new Intent(this, ActivityB.class);
            startActivity(c);
            finish();
        }
    }
@Override
public void onResume() {
    super.onResume();

        edNama_sma.setText(edNama_sma.getText());

    }
}

最佳答案

覆盖onResume()方法,并在此方法内部将name的值设置为名为EditTextedNama_sma文本。

@Override
public void onResume() {
super.onResume();

    edNama_sma.setText(nama);

}


因此,整个活动类应该像

public class CreateData extends Activity implements OnClickListener{
    private Button buttonAdd;
    private EditText edNama_sma;
    private String nama;

    @Override
    public void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.create_data);
        edNama_sma     = (EditText) findViewById(R.id.nama_sma);
        buttonAdd      = (Button) findViewById(R.id.buttom_add_koordinat);
        buttonAdd.setOnClickListener(this);
    }

    @Override
    public void onClick(View v)
    {
        nama  = edNama_sma.getText().toString().toUpperCase().trim();
        // TODO Auto-generated method stub
        switch(v.getId())
        {
            case R.id.buttom_add_koordinat:
            Intent c = new Intent(this, ActivityB.class);
            startActivity(c);

        }
    }

    @Override
    public void onResume() {
        super.onResume();

        edNama_sma.setText(nama);

    }
}

关于android - 在Android中调用Activity后如何在EditText中保存文本?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23498191/

10-13 06:25