在 ButterKnife 中取消繫結檢視

片段具有與活動不同的檢視生命週期。在 onCreateView 中繫結片段時,請在 onDestroyView 中將檢視設定為 null。當你呼叫 bind 為你做這個時,Butter Knife 返回一個 Unbinder 例項。在適當的生命週期回撥中呼叫其 unbind 方法。

一個例子:

public class MyFragment extends Fragment {
  @BindView(R.id.textView) TextView textView;
  @BindView(R.id.button) Button button;
  private Unbinder unbinder;

  @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
    View view = inflater.inflate(R.layout.my_fragment, container, false);
    unbinder = ButterKnife.bind(this, view);
    // TODO Use fields...
    return view;
  }

  @Override public void onDestroyView() {
    super.onDestroyView();
    unbinder.unbind();
  }
}

注意:不需要在 onDestroyView() 中呼叫 unbind(),但建議如果你的應用程式有一個大的 backstack,它會節省相當多的記憶體。