android中使用Intent在activity之间传递数据

来源:互联网 时间:1970-01-01

android中intent传递数据的简单使用:

1.使用intent传递数据:

首先将需要传递的数据放入到intent中

Intent intent = new Intent(MainActivity.this,OtherActivity.class);

intent.putExtra("name", "使用Intent传递数据");

startActivity(intent);

然后再目标activity中接收数据:

Intent intent=getIntent();

intent.getStringExtra("name")//获取数据

2.使用intent传递静态变量:

在目标activity中设置一个静态变量,启动目标activity时将数据存到静态变量中,然后再目标activity中直接读取。

Intent intent = new Intent(MainActivity.this,

      Other2Activity.class);

Other2Activity.data = "使用intent传递静态变量";

startActivity(intent);

3.使用intent传递全局变量

新建类MyApp继承Application,在AndroidManifest.xml文件中指定application节点的name属性为MyApp(android:name=".MyApp")

public class MyApp extends Application {

  public String data;

  public String getData() {   return data;  }

  public void setData(String data) {   this.data = data;  }

  @Override  public void onCreate() {

  super.onCreate();  

setData("hello world");  

} }

}

启动目标activity时将数据写入全局变量中:

     Intent intent = new Intent(MainActivity.this,Other3Activity.class);     MyApp myApp = (MyApp) getApplication();
     myApp.setData("使用intent传递全局变量");
     startActivity(intent);

在目标activity中接收数据:

MyApp myApp=(MyApp)getApplication();
myApp.getData();

4.使用剪切板传递数据

将需要传递的数据写入到剪切板中:

Intent intent = new Intent(MainActivity.this, ClipboardActivity.class); ClipboardManager clipboardManager=(ClipboardManager)getSystemService(MainActivity.this.CLIPBOARD_SERVICE); clipboardManager.setText("使用剪切板传递数据"); startActivity(intent);

然后在目标activity中取值:

ClipboardManager clipboardManager=(ClipboardManager)getSystemService(ClipboardActivity.CLIPBOARD_SERVICE); clipboardManager.getText();

 

以上就是一些简单的activity之间数据的传递。

 



相关阅读:
Top