Question

Dans Android, vous pouvez définir une liste de navigation dans la barre d'action en passant l'adaptateur Spinner et OnnavigationListener. Le problème est que la liste de navigation ne remplit pas la majeure partie de la barre d'action, comment la faire s'étendre comme l'application Gmail: Exemple de l'application Gmail:

enter image description here

Mon application:

enter image description here

Et voici le code:

//... setting the array adapter
ActionBar actionBar = getActionBar();
actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_LIST);
NavigationListener navigationListener = new NavigationListener();
ListAdapter listAdapter = new ListAdapter();
actionBar.setListNavigationCallbacks(listAdapter, navigationListener);
actionBar.setDisplayShowTitleEnabled(false);

Autre problème auquel je suis confronté est la taille de l'élément de spinner, ils apparaissent vraiment petits, est-ce parce que je ne passe pas TextView personnalisé (regardez la capture d'écran)? Exemple de ce que je fais:

private class ListAdapter extends BaseAdapter implements SpinnerAdapter {

    public View getView(int pos, View view, ViewGroup viewGroup) {
        TextView text = new TextView(context);
        text.setText(arrayAdapter.getItem(pos).toString());
        return text;
    }

}
Était-ce utile?

La solution

Vous souhaitez implémenter le getDropDownView Méthode aussi. Cela vous permet de fournir une vue différente pour la liste déroulante avec les métriques et le formatage que vous souhaitez.

Envisagez de gonfler les dispositions du cadre android.R.layout.simple_spinner_item et android.R.layout.simple_spinner_dropdown_item pour ces situations. Utilisation findViewById(android.R.id.text1) pour obtenir le TextView Vous devez remplir chacun.

Autres conseils

Peut-être que vous pouvez utiliser ActionBar Navigation à l'onglet et ajouter des icônes aux onglets plutôt que la navigation sur la liste car la navigation de Gmail ressemble plus à la navigation des onglets.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top