自定义方法优化页面跳转时传值

在真实的开发中,不同的页面可能是由不同的人实现的,而你的数据需要前一个页面的数据,这时,你可以通过询问同事你传过来的参数名叫什么,当然还有更好的方法,如下:

1.在你的活动页面添加页面跳转的自定义方法:

public class SecondActivity extends AppCompatActivity {

    private static final String TAG = "SecondActivity";


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_second);
        //接收上一个活动发送过来的信息
        Intent intent = getIntent();
        Log.e(TAG, "onCreate: "+intent.getStringExtra("hello"));

    }
    //这就是自定义的方法,仔细看,他和实现页面跳转的代码几乎一样,就是context代替了明确的活动名
    public static void actionStart(Context context ,String data1){

        Intent intent = new Intent(context,SecondActivity.class);
        intent.putExtra("hello",data1);
        context.startActivity(intent);
    }
}

2.告诉你的同事,启动你的活动时,调用actionStart()方法就可以了:

public class FirstActivity extends AppCompatActivity {

    private Button gotoSecondBtn;
    private static  final String TAG = "FirstActivity";


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_first);
        //Log.e(TAG, "onCreate: "+getTaskId());
        gotoSecondBtn = findViewById(R.id.goto_second_btn);
        //对按钮进行监听
        gotoSecondBtn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
              SecondActivity.actionStart(FirstActivity.this,"hello SecondActivity");
            }
        });
    }


}
效果展现:

这里写图片描述

猜你喜欢

转载自blog.csdn.net/shaochen2015821426/article/details/80222449