Android comment obtenir le thème de type AppCompat.Translucent avec la barre d’action de support?

Je voudrais append la barre d’action du support à l’une de mes activités, j’avais déjà utilisé le theme.translucent avec cette activité mais pour que la barre d’action du support fonctionne, je devais hériter de Theme.AppCompat, je dois donc conserver une thème dans cette activité, mais malheureusement, il n’y a pas un Theme.AppCompat.translucent que je peux voir par défaut, y at-il un moyen que cela peut être fait?

Vous pouvez créer un nouvel ensemble de styles à utiliser ayant les mêmes propriétés que Theme.Translucent partir de themes.xml .

Ajoutez ce qui suit à votre fichier styles.xml:

  

Vous pouvez remplacer le préfixe Theme.AppCompat par un autre élément si vous souhaitez hériter d’autres éléments du thème, tels que les styles de dialog, etc. Par exemple, un nom comme Theme.AppCompat.Light.Translucent aurait les propriétés du thème Light.

Pour utiliser le nouveau style, définissez la propriété theme sur @style/Theme.AppCompat.Translucent

   

Parama,

  

Cela devrait être l’en-tête de style si vous voulez que la barre d’outils disparaisse. Vous pouvez utiliser n’importe quel thème parent qui a NoActionBar pour d’autres effets.

J’espère que cela t’aides

Si nous utilisons Translucent pour une activité transparente. Il soulève d’autres problèmes – la couleur de Msgbox (maintenant blanche auparavant en noir), la couleur de la boîte de dialog par défaut, les filateurs sont déroulants mais ne montrent pas la flèche et le soulignement. Les fileurs sont de couleur noire texte noir; déroulant blanc texte déroulant noir et etc. Pour surmonter ce problème, vous pouvez simplement utiliser le code ci-dessous

Dans le style

  

Dans un fichier manifeste

  

J’espère que ça va aider Merci

La réponse de Cameron est un joli hack , mais il a produit une barre d’action flottante et a teinté ma barre d’état, ce que je ne voulais pas. J’ai donc ajouté plus d’atsortingbuts XML pour rendre la barre d’état transparente (pour sdk> = 19) et utilisé le code Java pour rendre la barre d’action invisible.

mainActivity.java:

 public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); getSupportActionBar().hide(); ... } ... } 

styles.xml

  

manifest.xml

   ...