我正在尝试将我的视图状态保存在我的片段中,但我担心我会泄露我的活动。这是我正在做的事情:
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle state){
if(mView != null){
View oldParent = mView.getParent();
if(oldParent != container){
((ViewGroup)oldParent).removeView(mView);
}
return mView;
}
else{
mView = inflater.inflate(R.id.fragview, null)
return mView;
}
}
我很担心,因为我知道所有视图都保留一个上下文,如果从充气器充气,我不知道它是活动上下文还是应用程序上下文。也许使用 getActivity().getApplication() 务实地创建视图并设置其属性而不是使用充气器会是一个更好的主意。我将不胜感激对此的任何反馈。
谢谢!
编辑:确认活动泄漏,虽然这段代码很好,但不要这样做:*(