在Android中,从Activity发送数据到Fragment可以通过使用Bundle来实现。下面是一个示例代码,说明如何正确地从Activity发送数据到Fragment,并避免出现"Bundle为空"的错误。
Bundle bundle = new Bundle();
bundle.putString("key", "data"); // 添加要发送的数据到Bundle中
MyFragment fragment = new MyFragment();
fragment.setArguments(bundle); // 将Bundle对象传递给Fragment
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_layout, container, false);
Bundle bundle = getArguments(); // 获取传递过来的Bundle对象
if (bundle != null) {
String data = bundle.getString("key"); // 从Bundle中获取数据
// 使用获取到的数据进行操作
}
return view;
}
通过以上步骤,就可以在Activity中发送数据到Fragment,并在Fragment中接收和使用这些数据,从而避免出现"Bundle为空"的错误。