android中使用Intent在activity之间传递数据
android中intent传递数据的简单使用:
1.使用intent传递数据:
首先将需要传递的数据放入到intent中
Intentintent=newIntent(MainActivity.this,OtherActivity.class);
intent.putExtra("name","使用Intent传递数据");
startActivity(intent);
然后再目标activity中接收数据:
Intentintent=getIntent();
intent.getStringExtra("name")//获取数据
2.使用intent传递静态变量:
在目标activity中设置一个静态变量,启动目标activity时将数据存到静态变量中,然后再目标activity中直接读取。
Intentintent=newIntent(MainActivity.this,
Other2Activity.class);
Other2Activity.data="使用intent传递静态变量";
startActivity(intent);
3.使用intent传递全局变量
新建类MyApp继承Application,在AndroidManifest.xml文件中指定application节点的name属性为MyApp(android:name=".MyApp")
publicclassMyAppextendsApplication{
publicStringdata;
publicStringgetData(){returndata;}
publicvoidsetData(Stringdata){this.data=data;}
@OverridepublicvoidonCreate(){
super.onCreate();
setData("helloworld");
}}
}
启动目标activity时将数据写入全局变量中:
Intentintent=newIntent(MainActivity.this,Other3Activity.class);
MyAppmyApp=(MyApp)getApplication();
myApp.setData("使用intent传递全局变量");
startActivity(intent);
在目标activity中接收数据:
MyAppmyApp=(MyApp)getApplication();
myApp.getData();
4.使用剪切板传递数据
将需要传递的数据写入到剪切板中:
Intentintent=newIntent(MainActivity.this,
ClipboardActivity.class);
ClipboardManagerclipboardManager=(ClipboardManager)getSystemService(MainActivity.this.CLIPBOARD_SERVICE);
clipboardManager.setText("使用剪切板传递数据");
startActivity(intent);
然后在目标activity中取值:
ClipboardManagerclipboardManager=(ClipboardManager)getSystemService(ClipboardActivity.CLIPBOARD_SERVICE);
clipboardManager.getText();
以上就是一些简单的activity之间数据的传递。另外,我在开发完APP都会用一些APP在线自动化测试工具进行测试:http://www.ineice.com