Переполнение текста в ContextMenu

1

Я пытаюсь разместить ContextMenu в своей ListActivity, когда пользователь нажимает на любой элемент списка, который отображает несколько подкатегорий. Не беспокойтесь, рассказывая мне другие альтернативы (ExpandableList, RadioButton и т.д.).

Как я могу получить FULL текст, чтобы он отображался, вместо того, чтобы быть усеченным? Вот как я заполняю ContextMenu:

    @Override  
    public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) {  
        super.onCreateContextMenu(menu, v, menuInfo);  

        //Fill context menu with appropriate subcategory
        menu.setHeaderTitle("Categories");
        for(String item : menuItem)
        {
            menu.add(0, v.getId(), menu.size()+1, item);
        }
    }

Обратите внимание, что menuItem - это просто массив String []

Вот мой ContextMenu. ContextMenu Мне кажется, что у дебила недостаточно репутации для публикации фотографий.

Теги:
word-wrap
contextmenu

2 ответа

0
Лучший ответ

Единственный способ, которым я знаю, - это создать ваше меню из XML, а не только в коде и изменить размер текста, чтобы весь текст соответствовал. Я немного оглянулся и не мог найти никакой информации о том, как изменить размер текста созданного программой меню.

Документы, касающиеся создания контекстного меню из XML находятся здесь.

0

Я столкнулся с подобной проблемой; однако я использую XML-ресурсы меню вместо настройки заголовков через код.

Элемент меню может содержать как заголовок, так и "android: titleCondensed" для сценариев, где заголовок будет усечен.

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

Если вы программным образом устанавливаете строки для достижения контекстного меню с разными элементами в разное время, вы можете рассмотреть указание названий и сокращенных заголовков в ресурсе меню xml, затем в onCreateContextMenu вы можете добавить логику для вызова "setMenuItemVisibility" для каждого элемента отфильтруйте элементы, которые вы не хотите отображать в любой момент времени.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню