Activity之间的静态变量的传输,通过定义新的函数(其中包含GET和SET方法,其中以Obj为例)定义了一个Obj函数,然后在MainActivity当中对其进行调用,仍旧是使用intent意图和ClickListener,然后通过静态赋值的方式将数据赋值给变量。代码如下:
public class MainActivity extends AppCompatActivity{
private Button btn;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btn=findViewById(R.id.btn);
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent=new Intent();
intent.setClass(MainActivity.this,Main22Activity.class);
Obj obj=new Obj();
obj.setName("哈哈哈");
Main22Activity.obj=obj;
startActivity(intent);
}
});
对于Obj函数的定义代码如下:
package com.example.myapplication;
public class Obj {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
关于Mainactivity2的页面代码
public class Main22Activity extends AppCompatActivity {
public static Obj obj;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main22);
Log.d("Main22Activity",obj.getName());
}
}