Вопрос

В Android вы можете установить список навигации на панели действий, передав адаптер счетчика и OnNavigationListener.проблема в том, что список навигации не заполняет большую часть панели действий. Как его расширить, как приложение Gmail:Пример приложения Gmail:

enter image description here

Мое приложение:

enter image description here

И вот код:

//... 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);

Другая проблема, с которой я сталкиваюсь, - это размер элемента счетчика, они кажутся очень маленькими, потому что я не передаю настроенное текстовое представление (посмотрите на снимок экрана)?пример того, что я делаю:

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;
    }

}
Это было полезно?

Решение

Вы хотите реализовать getDropDownView тоже метод.Это позволит вам предоставить другое представление раскрывающегося списка с нужными метриками и форматированием.

Рассмотрите возможность расширения макетов фреймворка. android.R.layout.simple_spinner_item и android.R.layout.simple_spinner_dropdown_item для этих ситуаций.Использовать findViewById(android.R.id.text1) чтобы получить TextView вам следует заполнить каждое из них.

Другие советы

Может быть, вы можете использовать Actionbar Вкладка навигация и добавьте значки на вкладки, а не на навигацию списка, поскольку навигация Gmail выглядит больше похоже на навигацию вкладок.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top