Android开发 java回调
在Android Java中,回调是一种常见的设计模式,它允许一个方法(通常是一个接口的一部分)在某个事件发生时被调用。这种模式可以用于处理异步操作,例如按钮点击、数据加载完成、网络请求返回等。
以下是一个简单的回调示例:
首先,定义一个回调接口:
public interface MyCallback {void onSuccess(String result);void onFailure(Exception error);
}
然后,创建一个使用这个回调的类:
public class DataFetcher {private MyCallback callback;public DataFetcher(MyCallback callback) {this.callback = callback;}public void fetchData() {// 模拟长时间运行的任务new Thread(new Runnable() {@Overridepublic void run() {try {// 模拟数据获取成功String data = "Data fetched successfully";callback.onSuccess(data);} catch (Exception e) {// 模拟数据获取失败callback.onFailure(e);}}}).start();}
}
最后,在Activity或其他组件中实现并使用这个回调:
public class MainActivity extends AppCompatActivity implements MyCallback {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);DataFetcher fetcher = new DataFetcher(this);fetcher.fetchData();}@Overridepublic void onSuccess(String result) {// 处理成功的结果Log.d("Callback", "Success: " + result);}@Overridepublic void onFailure(Exception error) {// 处理失败的异常Log.d("Callback", "Failure: " + error.getMessage());}
}
在这个例子中,DataFetcher
类负责执行某些长时间运行的任务,并在完成时通过回调接口通知调用者。MainActivity
实现了 MyCallback
接口,并在 DataFetcher
对象创建时传入自己,以便在数据获取成功或失败时接收通知。