9
votes

SET Alertbox Titre Barre de fond Couleur

Comment puis-je modifier la couleur de fond pour une barre de titre d'Alertbox? XXX


2 commentaires

Peut-être que ceci aide: Création d'une boîte d'alerte personnalisée dans Android.


Meilleure réponse que j'ai jusqu'à présent: blog.supenta.com/2014/07/02/...


3 Réponses :


10
votes

Le moyen le plus simple consiste à sous-classer une boîte de dialogue en créant une classe qui étend la boîte de dialogue et implémente le constructeur qui prend style comme paramètre. Ensuite, faites votre propre mise en page personnalisée.

Le code pour afficher la boîte de dialogue: xxx

Le code de la sous-classe: xxx

le style : mycoolialog.xml xxx

et dernier la disposition : personnalisé_dialog.xml xxx


2 commentaires

Bonjour Cornflakesdk, je souhaite afficher la liste du contenu dans la zone d'alertdialog. Titre Backgroung Couleur a changé mais non pas pas de content de contenu. J'utilise ce code pour afficher la liste des fichiers alertes.Setitems (liste, nouvelle boîte de dialoginterface.onclicklistener () {@override Public Void Onclick (dialogue Dialoginterface, Int Pos) {ToDo-généré automatiquement Stub}});


Puis changez la mise en page. Vous pouvez ajouter vos propres boutons et button.onClickListeners si nécessaire.



0
votes

Vous pouvez simplement définir le titre personnalisé comme celui-ci

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical" android:layout_width="match_parent"
    android:layout_height="match_parent">
    <LinearLayout
        android:orientation="vertical"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:paddingLeft="10dp"
        android:paddingRight="10dp"
        android:id="@+id/llsubhead"
        android:background="@color/colorPrimary">

        <TextView
            android:id="@+id/exemptionSubHeading4"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="10dp"
            android:layout_marginBottom="10dp"
            android:layout_weight="1"
            android:text="Exemption Sub Head"
            android:textAppearance="@style/Base.TextAppearance.AppCompat.Medium"
            android:textColor="@color/white" />
    </LinearLayout>
</LinearLayout>


0 commentaires

0
votes

de la réponse @cornflakesdk et @ice Spirit, je pensais que vous pouvez utiliser l'implémentation actuelle alertdialog.builder code> pour effectuer la boîte de dialogue personnalisée et faciliter la maintenance.

CustomDialogbuilder.java p> xxx pré>

personnalisé_dialog.xml p> xxx pré>

à l'intérieur de votre code d'activité, P>

 new CustomDialogBuilder(MyActivity.this)
                  .setTitle(R.string.actions)
                  .setItems(R.array.items_actions, (dialog, which) -> {
                    // handle items
                  }).create().show();


0 commentaires