在项目中,很多时候会用到函数回调CallBack
接下来给个简单的Demo由于暂时不清楚如何传递对象
在这里使用了一个全局变量callback
//主程序,接收回调的数据
package com.example.testtransaction; import android.os.Bundle; import android.view.View; import android.widget.Toast; import android.app.Activity; import android.content.Intent; public class MainActivity extends Activity{ public static MyResultCallBack callback;//这里用全局变量 @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); callback = new MyResultCallBack() { @Override public void getData(String data) { // TODO Auto-generated method stub Toast.makeText(MainActivity.this, "data = " + data, Toast.LENGTH_LONG).show(); } }; } public void test(View v){ Intent intent = new Intent(this, SecondActivity.class); startActivity(intent); } }
//回调的程序
package com.example.testtransaction; import android.os.Bundle; import android.app.Activity; public class SecondActivity extends Activity{ @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_second); } //按返回键即可 public void onStop(){ super.onStop(); MainActivity.callback.getData("callback data"); } }
//回调接口
package com.example.testtransaction; public interface MyResultCallBack{ public void getData(String data); }