将结果(可序列化的类)从DialogFragment传递到片段可以通过以下步骤实现:
OnResultListener
的接口,并在其中定义一个onResult()
方法。public interface OnResultListener {
void onResult(Serializable result);
}
OnResultListener
接口的实例。private OnResultListener onResultListener;
OnResultListener
接口的实例。public void setOnResultListener(OnResultListener listener) {
this.onResultListener = listener;
}
onResult()
方法,并将结果作为参数传递给该方法。if (onResultListener != null) {
onResultListener.onResult(result);
}
OnResultListener
接口,并重写onResult()
方法来处理传递的结果。public class MyFragment extends Fragment implements OnResultListener {
// ...
@Override
public void onResult(Serializable result) {
// 处理传递的结果
}
}
OnResultListener
接口的实例传递给DialogFragment。private void showDialogFragment() {
MyDialogFragment dialogFragment = new MyDialogFragment();
dialogFragment.setOnResultListener(this);
dialogFragment.show(getFragmentManager(), "dialog");
}
通过以上步骤,就可以在DialogFragment和片段之间传递结果了。在DialogFragment中,通过调用onResult()
方法将结果传递给片段,并在片段中实现onResult()
方法来处理传递的结果。
云+社区技术沙龙[第5期]
第五届Techo TVP开发者峰会
腾讯位置服务技术沙龙
T-Day
中小企业数字化升级之 提效篇
云+社区技术沙龙[第28期]
第四期Techo TVP开发者峰会
云+社区技术沙龙 [第30期]
领取专属 10元无门槛券
手把手带您无忧上云