1. 使用clipborad 传递
写入数据
button_clipboard.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View view) {
ClipboardManager clipboardManager=(ClipboardManager)getSystemService(Context.CLIPBOARD_SERVICE);
String context = "manualy";
clipboardManager.setText(context);
Intent intent = new Intent(Main.this, OtherActivity.class);
startActivity(intent);
}
});
读出数据
ClipboardManager clipboardManager = (ClipboardManager)getSystemService(Context.CLIPBOARD_SERVICE);
String content = (String)clipboardManager.getText();
2.使用Application传递服务级别的数据(只要没有调用onDestroy()服务级别的数据就不会消失)
MyApp.java
import android.app.Application;
public class MyApp extends Application{
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Override
public void onCreate() {
super.onCreate();
setName("Peter");
}
}
改写AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="mymobile.xinxin.mymobile" >
<application
android:name=".MyApp" <!--添加对应的Application-->
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name=".Main"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".OtherActivity"></activity>
</application>
</manifest>
写入数据
MyApp myApp;
button_clipboard.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View view) {
myApp=(MyApp)getApplication();
myApp.setName("Jack");
Intent intent = new Intent(Main.this, OtherActivity.class);
startActivity(intent);
}
});
读出数据
MyApp myApp;
myApp = (MyApp)getApplication();
String name = myApp.getName()
3.使用Intent传递数据
写入数据
button_clipboard.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View view) {
Intent intent = new Intent(Main.this, OtherActivity.class);
intent.putExtra("Address","China");
startActivity(intent);
}
});
读出数据
Intent intent = getIntent();
String address = intent.getStringExtra("Address")
4.使用静态变量传递数据
写入数据
button.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View view) {
Intent intent = new Intent(Main.this, OtherActivity.class);
OtherActivity.name="Tom";
OtherActivity.age=33;
startActivity(intent);
}
});
读出数据
public class OtherActivity extends Activity{
private TextView textView;
public static String name;
public static int age;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.other);
textView = (TextView)this.findViewById(R.id.msg);
textView.setText("name: " + name +"\nage: " +age );
}
}
分享到:
相关推荐
当PopupWindow需要向Activity传递数据时,只需调用已实现的接口方法即可。这样做的好处是保持了PopupWindow和Activity之间的解耦。 3. **静态变量**:创建全局静态变量,可以方便地在PopupWindow和Activity之间共享...
### Android之Activity的生命周期与Activity间的跳转及数据传递 #### Activity的概念与作用 在Android应用开发中,`Activity`是四大组件之一,主要负责管理应用程序的用户界面(UI)。一个Activity代表一个屏幕上的...
Android开发中,在不同模块(如Activity)间经常会有各种各样的数据需要相互传递,我把常用的几种 方法都收集到了一起。它们各有利弊,有各自的应用场景。 我现在把它们集中到一个例子中展示,在例子中每一个按纽代表...
首先,我们来理解Activity间数据传递的几种主要方式: 1. **Intent传参**:这是最常用的方法,通过Intent对象携带数据。可以传递基本类型、Parcelable接口实现类(如自定义对象)、Serializable接口实现类等。以下...
数据传递到`ViewPager`的各个`Fragment`,可以有以下几种方式: 1. 在`FragmentPagerAdapter`的`instantiateItem()`方法中,将数据作为参数传给创建的`Fragment`实例。 2. 通过`Bundle`在`Fragment`的构造函数或者`...
本文将详细介绍几种常见的数据传输方式,并探讨各自的优缺点。 #### 二、基于Intent的数据传输 **1. Intent的作用** - `Intent`是Android中的一种消息机制,用于启动新`Activity`或向其他组件发送消息。 - 在启动...
在Android系统中,Native Activity是一种特殊类型的Activity,它允许开发者使用C或C++代码来实现应用程序的用户界面,而不是传统的Java或Kotlin。这得益于Android的NDK(Native Development Kit),一个工具集,使得...
我们将探讨几种主要的数据传递方式。 1. **Intent**: Intent是Android中的一个核心概念,它用于启动一个Activity或Service,同时也常用于传递数据。通过在Intent中添加额外的数据(键值对),可以在启动新Activity...
首先,我们来看Fragment向Activity传递数据。这通常通过接口回调、Bundle或者事件总线等方式实现。最常见的方法是使用Bundle,因为这种方式简单且易于理解。在Fragment中,我们可以创建一个方法,如`...
在Android开发过程中,经常会遇到需要在不同的`Activity`之间传递数据的需求,例如用户从一个页面选择一张图片后,在另一个页面显示这张图片等场景。本篇文章将详细探讨如何在两个`Activity`(即`MainActivity`与`...
本篇笔记将详细探讨Android中使用意图传递数据的几种方式,帮助开发者深入理解这一核心概念。 1. **基本数据类型传递** 对于简单的数据类型,如字符串(String)、整型(int)、浮点型(float)等,可以直接通过Intent的...
Activity的生命周期主要通过以下几种状态来定义: 1. **启动状态**:Activity被创建但还没有完全显示。 2. **运行状态**:Activity处于前台并且对用户可见。 3. **暂停状态**:Activity不再处于前台但仍可见。 4. *...
Android系统默认提供了几种基本的切换动画,如淡入淡出、滑动等。这些动画可以通过在Manifest.xml文件中的`<activity>`标签内设置`android:transitionAnimationScale`属性来启用或禁用。例如,设置为0.5将使动画...
Intent不仅可以用来启动活动(Activity)、服务(Service)或者广播接收器(BroadcastReceiver),还可以传递数据。本篇文章将详细探讨如何通过Intent在Android中传递对象,主要分为两种方式:使用`Serializable`...
Intent是一种消息对象,用于启动新的Activity或传递数据给其他组件。例如,当需要从一个Activity跳转到另一个Activity时,我们可以创建一个Intent,设置目标Activity的类名,然后调用`startActivity()`方法。如果...
在Android应用开发中,Activity是Android系统中的一个核心组件,它是用户界面的载体,而Intent则是连接各个Activity的桥梁,用于传递数据和启动其他组件。Intent不仅用于启动Activity,还能启动Service、...
当需要在Fragment之间传递数据时,通常有以下几种方法: 1. 使用Bundle:在创建Fragment时,可以通过Bundle对象传递基本类型或者序列化的对象。例如,Fragment A可以创建一个包含数据的Bundle,然后在Fragment B的...
要实现点击穿透,我们可以通过以下几种方法: 1. 自定义ViewGroup:创建一个自定义的 ViewGroup,并重写 `onInterceptTouchEvent` 方法。在这个方法里,如果检测到不需要拦截的事件(例如滑动事件),就返回 false...
通过设置Intent的`putExtra()`方法传递数据,然后在目标Activity中使用`setResult()`和`finish()`返回结果。源Activity可以通过`onActivityResult()`方法接收返回的结果。 在描述中提到的"几个常用控件的用法",...
参见 http://blog.csdn.net/xcl168 Android开发中,在不同模块(如Activity)间经常会有各种各样的数据需要相互传递,我把常用的几种 方法都收集到了一起。它们各有利弊,有各自己的应用场景。 我现在把它们集中到...