android回傳值

 

 

頁面一如下: 頁面二如下:

邏輯描述在頁面二

實現代碼如下 :

1.創建一個User類:如下:

package com.ycp.intentforback;

import java.io.Serializable;

public class User implements Serializable {
    String name;
    String age;

    public User() {

    }
    public User(String name, String age) {
        this.name = name;
        this.age = age;
    }

    public String getName() {
        return name;
    }

    public String getAge() {
        return age;
    }

    public void setName(String name) {
        this.name = name;
    }

    public void setAge(String age) {
        this.age = age;
    }
}

這個User類主要作用是頁面一傳值和頁面二接收值及回傳值時對數據進行存儲的中間層。

頁面一邏輯代碼如下:

  protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        et_name = (EditText) findViewById(R.id.et_name);
        et_age = (EditText) findViewById(R.id.et_age);
        login = (Button) findViewById(R.id.login);

        login.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent = new Intent(MainActivity.this,Main2Activity.class);
                User user = new User();
                String s = et_name.getText().toString();
                String s1 = et_age.getText().toString();
                user.setName(s);
                user.setAge(s1);

                intent.putExtra("goto",user);
                startActivityForResult(intent,101);

            }
        });

    }
//接收回傳值方法
    @Override
    protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        Userback userback = (Userback) data.getSerializableExtra("forback");
        et_name.setText(userback.getWork());
        et_age.setText(userback.getXingzuo());
    }
}

頁面二代碼如下·:

package com.ycp.intentforback;

import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;

import java.io.Serializable;

public class Main2Activity extends AppCompatActivity {

    private TextView tv_name;
    private TextView tv_age;
    private EditText et_work;
    private EditText et_xingzuo;
    private Button btn;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main2);
        tv_name = (TextView) findViewById(R.id.tv_name);
        tv_age = (TextView) findViewById(R.id.tv_age);

        et_work = (EditText) findViewById(R.id.et_work);
        et_xingzuo = (EditText) findViewById(R.id.et_xingzuo);
        btn = (Button) findViewById(R.id.btn);

        Intent intent = getIntent();
        User user =(User) intent.getSerializableExtra("goto");
        tv_name.setText(user.getName());
        tv_age.setText(user.getAge());

        btn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent1 = new Intent();
                String s = et_work.getText().toString();
                String s1 = et_xingzuo.getText().toString();
                Userback userback = new Userback(s,s1);
                intent1.putExtra("forback",userback);
                setResult(1,intent1);
                finish();
            }
        });
    }
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章