Je dois faire en sorte qu'une activité apparaisse telle qu'elle reste en plein écran (sans barre de titre), mais avec la barre d'action.
App utilise Holo Light pour ses interfaces.
Y a-t-il un tel style/thème?
Malheureusement, tous les thèmes Holo Light intégrés sans barre de titre n’ont pas non plus de barre d’action. Theme.Holo.Light.NoActionBar
a une barre de titre mais pas de barre d'action, et Theme.Holo.Light.NoActionBar.Fullscreen
n'a ni la barre d'action ni la barre de titre.
J'ai eu le même "problème" et ce que je fais est fondamentalement le bon vieux moyen:
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
Ceci combiné avec le Theme.Holo
normal donne une interface utilisateur avec Actionbar mais pas de zone de notification.
Voici ce que vous devez définir pour atteindre cela:
actionBar.setDisplayHomeAsUpEnabled(false);
actionBar.setHomeButtonEnabled(false);
actionBar.setDisplayUseLogoEnabled(false);
actionBar.setDisplayShowTitleEnabled(false);
actionBar.setDisplayShowHomeEnabled(false);
Bonne chance
Vous pouvez créer un thème personnalisé qui hérite de Holo Light et supprime la barre de titre.
Ajoutez ce qui suit à res/values / styles.xml
<style name="My.Holo.Light.FullScreen" parent="Android:Theme.Holo.Light">
<item name="Android:windowFullscreen">true</item>
<item name="Android:windowContentOverlay">@null</item>
</style>
Définissez ce style comme thème par défaut pour votre application dans le fichier manifeste xml.
utilisez simplement Theme.Holo , il est en plein écran et avec une barre d’action :)
Essayez ceci (voir http://javatechig.com/Android/actionbar-with-custom-view-example-in-Android pour un tutoriel complet):
private void actionBar() {
// remove title
// requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
ActionBar actionBar = getActionBar();
actionBar.setBackgroundDrawable(new ColorDrawable(Color.parseColor("#bdbb35")));
actionBar.show();
actionBar.setDisplayShowHomeEnabled(false);
actionBar.setDisplayShowTitleEnabled(false);
LayoutInflater mInflater = LayoutInflater.from(this);
View mCustomView = mInflater.inflate(R.layout.custom_actionbar, null);
//TextView mTitleTextView = (TextView) mCustomView.findViewById(R.id.title_text);
// mTitleTextView.setText("My Own Title");
actionBar.setCustomView(mCustomView);
actionBar.setDisplayShowCustomEnabled(true);
}