Я играю с управлением кнопками пользовательского интерфейса в ICS.
Текущий механизм подавления кнопок Nav - это вызов setSystemUiVisibility из View с использованием флагов SYSTEM_UI_FLAG_HIDE_NAVIGATION или SYSTEM_UI_FLAG_LOW_PROFILE. Это кажется странным местом для установки этих флагов, так как большинство других связанных настроек (например, скрытие строки состояния) были выполнены через свойства окна LayoutParams.
У меня вопрос: есть ли у кого-нибудь из вас идеи о том, как сделать это из контекста действия? В настоящее время мое приложение предназначено для запуска с базовым классом активности, который содержит любую функциональность, которая мне нужна во всем приложении. Конкретные действия затем выводятся из этого базового класса. Я хотел бы иметь возможность устанавливать флаги навигации пользовательского интерфейса из этой базовой активности, чтобы мне не приходилось делать это в нескольких местах по всему исходному коду ... но моя базовая активность не содержит объектов View.
В качестве вторичного утверждения я действительно хотел бы иметь возможность полностью удалить кнопки NAV (например, с помощью SYSTEM_UI_FLAG_HIDE_NAVIGATION) и не дать им вернуться к пользовательскому вводу (давая моему приложению полный контроль над пользовательским интерфейсом). Я знаю, что это не то, что должно делать любое приложение с рынка ... но я не занимаюсь разработкой того, что будет доступно через рынок. Мой текущий план включает в себя пользовательскую сборку ОС, которая позволит мне выполнить это, но было бы неплохо, если бы был какой-то метод устранения этих программных кнопок в это время.
Спасибо!