0

私のアプリケーションには、EMPID と INFO という 2 つのアクティビティがあります。EMPIDアクティビティでは、empidと言うEditTextが1つあり、別のアクティビティINFOには別のEditText Nameがあります。

各アクティビティでボタンを使用して、これらのアクティビティを切り替えることができます。

しかし、2 番目のアクティビティに切り替えて最初のアクティビティに戻ったときに、empid の値が表示されるようにします。

誰でもこれらについて助けることができますか?

前もって感謝します。

4

3 に答える 3

1

最初のアクティビティから 2 番目のアクティビティにデータを送信するようにコードを変更します。

@Override
    public void onClick(View v) {
     // TODO Auto-generated method stub
     /*Create new Intent Object, and specify class*/
    Intent intent = new Intent();  
    intent.setClass(EMPID.this,INFO.class);
    /*new Bundle Object, and put data in bundle object*/ 
     Bundle bundle = new Bundle();  
     bundle.putString("EMPID ","empid");   
    /*Put Bundle object i.e bundle in intent*/ 
    intent.putExtras(bundle);  
    EMPID.this.startActivity(intent);
@Override
public void onResume()
{
  //SET EDITVIEW VALUE HERE to EMPID
    super.onResume();
}

アクティビティ情報:

    @Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.receivermain);
    TextView txtvwreceived=(TextView)findViewById(R.id.txtviewsender);
    /* Intent To obtain the  bundle object from EMPID */
    Bundle bundle = this.getIntent().getExtras();  
    /* Obtain String from Intent  */
    if(bundle !=null)
    {
        /* Obtain Data from bundle object */ 
        String strdata = bundle.getString("EMPID");
        }
    }

2番目の方法は、EditView値を設定するために最初のアクティビティ(EMPID.class)のメソッドを使用して2番目のアクティビティ(INFO.class)を開始しstartActivityForResult()、オーバーライドします。onActivityResult

于 2012-06-24T08:30:16.923 に答える
0

あなたがする必要がputExtrasありますgetIntExtras

以下のスニペットが役立ちます。

EMPID.java

Intent intent=new Intent(this,INFO.class);
intent.putExtra("id", empid);
startActivity(intent);

INFO.java

int empId=getIntent().getIntExtra("id", 0);
于 2012-06-24T08:28:03.103 に答える
0

startActivityForResult()2 番目のアクティビティを呼び出すときに使用します。これにより、最初のアクティビティが以前の状態に維持され、最初のアクティビティにempid戻ったときに維持できます。

empid の値を 2 番目のアクティビティに送信する場合は、 を使用できますintent.putExtra()

于 2012-06-24T08:21:54.737 に答える