发新帖

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

[复制链接]
5895 0
androidintent传递数据的简单使用:
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 {
  publicString data;
  publicString getData() {   return data;  }
  public voidsetData(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);
                ClipboardManagerclipboardManager=(ClipboardManager)getSystemService(MainActivity.this.CLIPBOARD_SERVICE);
                clipboardManager.setText("使用剪切板传递数据");
                startActivity(intent);
然后在目标activity中取值:
ClipboardManager clipboardManager=(ClipboardManager)getSystemService(ClipboardActivity.CLIPBOARD_SERVICE);
       clipboardManager.getText();
以上就是一些简单的activity之间数据的传递。另外,我在开发完APP都会用一些APP在线自动化测试工具进行测试:www.ineice.com

举报 使用道具

回复
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表