Java 如何在Android中发回捆绑包

Java 如何在Android中发回捆绑包,java,android,android-intent,Java,Android,Android Intent,我已经创建了登录表单和登录成功的时间。它将转到MainActivity.java 在main活动中有一个按钮以转到具有intent发送用户名和密码的帐户设置。像这样: editu.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Intent i = new Intent(MainActivity.t

我已经创建了登录表单和登录成功的时间。它将转到
MainActivity.java
main活动中
有一个
按钮
以转到具有
intent
发送用户名和密码的帐户设置。像这样:

editu.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
                    Intent i = new Intent(MainActivity.this, EditUser.class);
                    i.putExtra("id",mUser.getId());
                    i.putExtra("username",mUser.getUsername());
                    i.putExtra("pass",mUser.getPassword());
                    startActivity(i);
                    //finish();
        }
    });
EditUser.class
中,有
Bundle
来获取如下信息:

Bundle args = getIntent().getExtras();
但是,当我完成帐户管理后,我想通过
主页按钮上的选项卡返回主页(MainActivity)
,您必须使用它。
将数据设置为intent并通过单击“上一步”按钮将其传递。

首先,您需要使用
startActivityForResult(intent,requestCode)调用
main活动
。那么您确实喜欢以下代码:

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);

    if (resultCode == RESULT_OK) {

        // Do something

    }

}
编辑:

那么你还必须做:

@Override
public boolean onOptionsItemSelected(MenuItem item) {

    if (item.getItemId() == android.R.id.home) {

        finish();

        return true;
    }
    else {
        return MenuActionBar.optionsItemSelected(this, null, item)
                ? true : super.onOptionsItemSelected(item);
    }

}

首先以这种方式更正您的条件检查条件(如果(args==null))并在登录后将数据保存到首选项中,然后在需要时使用它。通过
startActivityForResult()
调用子活动。
onBackPressed()
它是标签上的后退按钮吗?否。该方法仅用于后退按钮。我将编辑我的答案,向您展示如何操作。不,只有
onActivityResult
必须位于
main活动中。其他的必须在你的
EditUser
哦,我知道了。多谢各位
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);

    if (resultCode == RESULT_OK) {

        // Do something

    }

}
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_pedido);

    // You have to enable the home button on action bar doing the following
    getActionBar().setHomeButtonEnabled(true);
    getActionBar().setDisplayHomeAsUpEnabled(true);

}
@Override
public boolean onOptionsItemSelected(MenuItem item) {

    if (item.getItemId() == android.R.id.home) {

        finish();

        return true;
    }
    else {
        return MenuActionBar.optionsItemSelected(this, null, item)
                ? true : super.onOptionsItemSelected(item);
    }

}