Android Des vues indomptables dans ButterKnife


Exemple

Les fragments ont un cycle de vie différent des activités. Lors de la liaison d'un fragment dans onCreateView, définissez les vues sur null dans onDestroyView. Butter Knife renvoie une instance Unbinder lorsque vous appelez bind pour le faire pour vous. Appelez sa méthode de détachement dans le rappel de cycle de vie approprié.

Un exemple:

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();
  }
}

Remarque: L'appel de unbind () dans onDestroyView () n'est pas obligatoire, mais recommandé car il permet d'économiser un peu de mémoire si votre application présente un important backstack.