Ограниченная ширина холста Android для детей
Я написал приложение с основным графическим интерфейсом действий, состоящим из нескольких кнопок и текстовых представлений в относительном макете, заданном файлом макета XML. Он занимает примерно половину ширины ландшафта и две трети высоты.
Я хочу назвать дочернюю активность полноэкранным холстом, который при активации прикрывал бы приостановленный графический интерфейс основной активности.
Я создал отдельное приложение, которое использует класс onDraw(Canvas) под названием DrawView, который при запуске в качестве отдельного приложения обеспечивает полноэкранный холст, который мне нужен. Он построен из действия с кодом, который показан ниже.
У меня проблема в том, что когда я объединяю этот код в свой основной пакет и запускаю действие canvas из основного действия, ширина окна для canvas уменьшается с 1280 до 696 пикселей в соответствии с методом getWidth(). Похоже, что моя основная активность родителей ограничивает размер окна дочерней активности. Я не знаю, что вызывает это уменьшение ширины, и как это контролировать. Я перепробовал много вариантов безрезультатно. Как предотвратить такое уменьшение ширины? Управляется ли это по схеме Android? Может ли это быть отменено?
Заранее благодарю за любую помощь!
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// Set full screen view
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
drawView = new DrawView(this);
setContentView(drawView);
drawView.requestFocus();
drawView.setBackgroundColor(0xFFFFFFFF);
}
1 ответ
Я отвечаю на свой вопрос здесь только на тот случай, если есть кто-то, кто является новичком, я думаю, что общая терминология высокого уровня графики сталкивается с этой же проблемой.
Все, что мне нужно было сделать, это удалить строку "темы" файла манифеста для этого действия:
Android: тема ="@ андроид: стиль /Theme.Holo.Dialog"
Тема "Диалог" ограничивает размер окна "Активность" типичным размером экрана диалога ввода пользователя.