Votre première question, qui est de travailler avec une mise en page incluse en utilisant ViewBinding, peut être résolue très facilement.
En voici un exemple fragment principal.xml archivo
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/recycler_view_main"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1" />
<include
android:id="@+id/toolbar"
layout="@layout/toolbar" />
</LinearLayout>
Et MainFragment.java peut être comme ceci
public class MeaningFragment extends Fragment {
private MainFragmentBinding binding;
private ToolbarBinding toolbarBinding;
@Nullable
@Override
public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
binding = MainFragmentBinding.inflate(inflater, container, false);
toolbarBinding = binding.toolbar;
return binding.getRoot();
}
@Override
public void onDestroy() {
super.onDestroy();
toolbarBinding = null;
binding = null;
}
}
Maintenant, vous avez deux liaisons. L'une d'entre elles est la liaison par défaut et la suivante provient de la disposition incluse.
0 votes
L'autre moyen simple serait d'utiliser la bibliothèque de liaison de données. Enveloppez ensuite votre mise en page XML avec la balise <layout> pour que, si vous utilisez la bibliothèque, celle-ci génère automatiquement les classes nécessaires pour lier les vues de la mise en page avec vos objets de données. Honnêtement, je pense que c'est la voie à suivre. Suivez le guide aquí
1 votes
Bonjour, j'ai écrit un article de blog expliquant complètement la liaison de vue et la manipulation de la balise incluse avec la vérification des mises en page de fusion et d'inclusion. Androidbites|ViewBinding
0 votes
Je suis un peu coincé ici : stackoverflow.com/questions/67808297/
0 votes
Au fait, pour tous ceux qui se demandent comment utiliser la liaison de vue pour mettre en place l'élément logo d'appbar il suffit d'utiliser l'objet de soumission comme : binding.toolbar.setLogo(R.drawable.bar_logo) ; . Les changements de "binding" et "bar_logo" selon vos besoins.