Как отобразить половину экрана? - PullRequest
0 голосов
/ 18 февраля 2011

Я работаю над проектом, где мне нужно отобразить ListField, который занимает верхнюю половину экрана, когда пользователь нажимает на элемент меню. Он должен отображаться в верхней части предыдущего экрана. Как я могу это реализовать?

Вот мои идеи:

  1. Используйте ListField напрямую с указанным выше размером экрана для требуемого экрана.
  2. Использование PopupScreen с ListField
  3. Использование некоторых функций разделения экрана для отображения половины экрана

1 Ответ

2 голосов
/ 21 марта 2011

PopupScreen лучше всего подходит для вашего вопроса.Можете ли вы попробовать опубликовать код, который не работал?

Другой вариант - использовать менеджеры для разделения экрана (старший менеджер и младший менеджер) и удерживать еще два менеджера: один, который будет отображаться при нажатии.и тот, который будет использоваться в качестве указателя на отображаемый диспетчер.Затем, когда происходит событие замены, вы должны вызвать следующую функцию:

void updateManagers(boolean click)    
{    
  if(click)
  {    
    currentManager = afterClickManager;    
  }    
  else    
  {  
    currrentManager = beforeClickManager;    
  }    
  invalidate();  
}

, где currentManager - это экземпляр Manager, а afterClickManager & beforeClickManager - это экземпляры некоторого класса, который расширяет Manager (нет необходимоститот же класс).

Обратите внимание, что вы должны добавить currentManager в свой макет экрана перед использованием функции инвалида.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...