0

J'ai quelques problèmes en essayant d'enlever une barre d'outils dans un fragment spécifique, j'ai ce code dans la méthode fragment onCreateView:Retirer ActionBar dans le fragment

public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { 
    View view = inflater.inflate(R.layout.fragment_login,container,false); 
    mValidator = new Validator(this); 
    mValidator.setValidationListener(this); 
    mFbHelper = new 
    mGHelper = new GoogleHelper(this, null, this); 

    ((DrawerUtil) getActivity()).setDrawerLocked(true); 
    ((AppCompatActivity) getActivity()).getSupportActionBar().hide(); 
    initViews(view); 
    return view; 
} 

Je peux cacher la ActionBar, mais l'idée est de supprimer la ActionBar pour utiliser correctement un logo, im en utilisant ce code: ((AppCompatActivity) getActivity()).getSupportActionBar().setDisplayHomeAsUpEnabled(state); mais ça ne marche pas. enter image description here Des idées?

+0

Oui, mais dans le fragment spécifique –

+0

vérifier mon réponse éditée ..... –

Répondre

0

Une activité dans laquelle vous chargez votre fragment, essayez ci-dessous le code dans le fichier java;

ActionBar actionBar = getSupportActionBar(); 
actionBar.hide(); 

et retirer sous la ligne de Menifest .xml

android:theme="@style/AppTheme.NoActionBar" 
+0

Non, en fait j'ai ce NoActionBar dans le fichier Manifest, et est également un fragment –

+0

Je change ma réponse .. Essayez que –

0

vous pouvez le supprimer à partir du fichier xml, vérifiez votre code d'activité où fragment chargement et procéder à des modifications si ce fragment est la charge de la barre d'outils. setvisibility à parti

+0

je n'appelle pas le getSupportActionBar dans le fragment_login.xml –

+0

Postez votre code d'activité à partir de laquelle vous charger votre fragment –

+0

pas nécessaire, vous voulez faire dans tous les fragments? ou seulement un –

1

Essayez comme ça

private HomeActivity csActivity; 

et

csActivity  = (HomeActivity)getActivity(); 
csActivity.getSupportActionBar().hide(); 
+0

En fait je peux cacher la barre d'action, l'idée est de l'enlever du fragment spécifique –

+0

quelle est la différence dans les deux – Anil

0

Pour votre activité de connexion utiliser

<style name="BaseTheme" parent="@style/Theme.AppCompat.Light.NoActionBar"> 
    <item name="windowNoTitle">true</item> 
    <item name="windowActionBar">false</item> 
</style> 

cela supprimera le ActionBar par défaut fourni par android.So joindre votre fragment à cette activité et il n'y aura pas de barre d'action dans votre fragment aussi.

Pour les autres activités, si vous avez besoin d'un ActionBar, vous pouvez utiliser le même thème et ajouter la barre d'outils en tant que actionBar à votre activité.

Si vous ne voulez pas ActionBar utiliser le thème

parent="@style/Theme.AppCompat.Light.NoActionBar" 

Si vous voulez ActionBar utiliser le thème

parent="@style/Theme.AppCompat.Light.DarkActionBar" or 

parent="@style/Theme.AppCompat.Dark.LightActionBar" 

Si vous utilisez la lumière ou un thème ActionBar sombre, vous obtiendrez un ActionBar.Again par défaut si vous vouloir cacher cela vous pouvez le faire

getActivity().getSupportActionBar().hide(); // in Fragment 

getSupportActionBar().hide();     // in Activity