Salut les gars, J'ai un fichier de mise en page de ressources Android view_notification_badge.xml comme ci-dessous

`<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <ImageView
        android:id="@+id/badge"
        android:layout_width="20dp"
        android:layout_height="20dp"
        android:layout_gravity="top|center_horizontal"
        android:layout_marginStart="10dp"
        android:layout_marginTop="10dp"
        android:gravity="center"
        android:padding="3dp"
        android:visibility="gone"
        app:srcCompat="@drawable/ic_notify_50" />

    <com.adalipa.smartcard.api.payment.font.RobotoTextView
        android:id="@+id/badgecount"
        style="@style/ButtonStyle.RaisedEmpty"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="top|center_horizontal"
        android:layout_margin="0dp"
        android:minWidth="112dp"
        android:layout_marginStart="10dp"
        android:layout_marginTop="10dp"
        android:gravity="center"
        android:padding="3dp"
        android:textStyle="bold"
        android:text="0"
        android:textColor="#FF3D00"
        android:textSize="16dp"
        android:visibility="visible"
        tools:ignore="PrivateResource" />
</FrameLayout>`

Et j'ai ma méthode MainActivity.java qui définit le badge sur le BottomNavigationView comme ci-dessous

BottomNavigationMenuView menuView = (BottomNavigationMenuView) bottomNavigationView.getChildAt(0);
                BottomNavigationItemView itemView = (BottomNavigationItemView) menuView.getChildAt(2);
                notificationBadge = LayoutInflater.from(this).inflate(R.layout.view_notification_badge, menuView, false);

                itemView.addView(notificationBadge);

Mon problème est de savoir comment puis-je obtenir le nombre de badges de l'élément RobotoTextView dans des fichiers XML afin que je puisse y définir du texte à l'aide de mon code Java ?. Merci d'avance

1
Tata Nyerere 16 févr. 2020 à 19:58

1 réponse

Meilleure réponse

Puisque vous connaissez l'identifiant du TextView, vous pouvez utiliser View.findViewById() sur le View gonflé :

TextView tvCount = notificationBadge.findViewById(R.id.badgecount);
0
Bö macht Blau 16 févr. 2020 à 17:10