Android 使用意图发送数据

Android 使用意图发送数据,android,android-layout,android-intent,android-activity,textview,Android,Android Layout,Android Intent,Android Activity,Textview,如何使用intent将数据(如字符串)从活动a发送到活动B而不离开活动a?我还需要知道如何捕获活动B中的数据并将其添加到文本视图中。您正在寻找的是Brodcast接收器: 活动A应发送brodcast: public class ActivityA extends Activity { private void sendStringToActivityB() { //Make sure to have started ActivityB first, oth

如何使用intent将数据(如字符串)从活动a发送到活动B而不离开活动a?我还需要知道如何捕获活动B中的数据并将其添加到文本视图中。

您正在寻找的是Brodcast接收器:

活动A应发送brodcast:

public class ActivityA extends Activity
{
     private void sendStringToActivityB()
     {
         //Make sure to have started ActivityB first, otherwise B wont be listening on the receiver:
         startActivity(ActivityA.this, ActivityB.class);
         //Then send the data
         Intent intent = new Intent("someIntentFilterName");
         intent.putExtra("someKeyName", "someValue");
         sendBroadcast(intent);
     }
}
活动B应实现以下功能:

    public class ActivityB extends Activity
    {
        private TextView mTextView;

        private BroadcastReceiver mBroadcastReceiver = new BroadcastReceiver()
        {       
            @Override
            public void onReceive(Context context, Intent intent)
            {
                String strValueRecived = intent.getStringExtra("someKeyName","defaultValue");
                mTextView.setText(strValueRecived);
            }
         };

         @Override
         protected void onCreate(Bundle savedInstanceState)
         {
              super.onCreate(savedInstanceState);
              mTextView = (TextView)findViewById(R.id.textView); 


              registerReceiver(mBroadcastReceiver, new IntentFilter("someIntentFilterName"));
         } 
} 
这个例子不完整,但是
您可以在以下链接上了解它:

从A广播一个意图,并让B通过注册来接收它-。