Barre de titre personnalisée sans rembourrage (Android)
Donc je suis en utilisant les techniques de ce fil d'utiliser un arrière-plan personnalisé pour ma barre de titre. Malheureusement, le cadre des lieux de ma mise en page à l'intérieur d'un FrameLayout
(title_container
) qui a rembourrage comme on le voit ci-dessous.
Est-il de toute façon pour enlever le gris des frontières? Le cadre de la mise en page est définie dans com.android.internal.R.id.title_container
l'accès à l'image par l'ID d'être fragile.
source d'informationauteur Casebash
Vous devez vous connecter pour publier un commentaire.
J'ai eu du mal avec cette même question, et maintenant j'ai la réponse!
Que vous avez probablement vu plusieurs endroits, vous devez créer un themes.xml ressources:
Remarque il n'est pas souvent mentionné dans les sites parlant sur les barres de titre, vous devez sélectionner ce thème à la vue, de l'activité, ou de l'application. Je le fais au niveau de l'application par l'ajout d'android:le thème de la propriété de l'application:
Vous avez également besoin d'un styles.xml pour définir que WindowTitleBackgroundStyle. Contrairement aux différentes versions de ce fichier j'ai vu flottant de restauration aroung le web, j'ai ajouté une ligne supplémentaire dans le fichier qui définit le padding à 0, ce qui élimine le rembourrage vous vous plaignez:
Il n'y a effectivement pas besoin d'utiliser une mise en page personnalisée pour personnaliser l'image d'arrière-plan. Le code suivant dans
theme.xml
:Toutefois, si vous ne voulez vraiment utiliser un custom barre de titre, puis le code suivant supprime la marge:
title_bar_background
a été défini comme l'ID de l'image d'arrière-plan dans le XML. J'ai misandroid:scaleType="fitXY"
.Il y a un lenghty fil sur sur anddev.org qui peut être en mesure de vous aider
http://www.anddev.org/my_own_titlebar_backbutton_like_on_the_iphone-t4591.html
J'ai suivi et réussi à créer mon propre barre de titre qui me permet de définir la marge.
Xml pour ma barre de titre:
Ci-dessus crée une petite barre grise avec le texte aligné à droite et à gauche
Je me suis débarrassé de l'rembourrage en obtenant le titre de conteneurs et de réglage de la marge intérieure de 0. Il fonctionne sur Android 4.
Comme mentionné par dalewking, vous pouvez modifier le Manifeste comme ceci:
Mais cela n'a pas fonctionné pour moi jusqu'à ce que j'ai ajouté
à l'activité elle-même comme:
Comme en 4.2 et ADT 21 lors de la création d'un layout par défaut les dimensions standard sont ajoutés au conteneur parent:
Valeurs sont situés dans res/dimens.xml:
Soit de les retirer de la mère ou de modifier le dimens.xml les valeurs aux valeurs souhaitées.
J'ai ajouté la suite de remplissage élément de la AppTheme dans styles.xml
Le manifeste de l'Application utilise ce thème:
Cette résolu pour moi.