帮我写一下fragment避免getActivity为空
时间: 2024-06-06 18:09:08 浏览: 91
在activity中添加Fragment
好的,针对你的问题,以下是一个避免 getActivity() 为空的 Fragment 的示例代码:
public class MyFragment extends Fragment {
private Context mContext;
@Override
public void onAttach(@NonNull Context context) {
super.onAttach(context);
mContext = context;
}
@Nullable
@Override
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
// Inflate the layout for this fragment
View view = inflater.inflate(R.layout.my_fragment_layout, container, false);
// Do something with mContext, which will never be null
mContext.getResources().getString(R.string.app_name);
return view;
}
}
在这个示例中,我们通过在 onAttach 方法中接收 Context 来存储当前 Fragment 的上下文,从而保证在 onCreateView 方法中调用 mContext 不会出现空指针异常。
阅读全文