Intereting Posts
Создание и использование 9-патч-изображений в Android Тестирование устройств Android: как сделать класс более подверженным тестированию? Как обновления приложений для Android работают технически? Андроид Фрагмент и изменение ориентации, вызывающие: IllegalStateException: Не удается выполнить это действие после onSaveInstanceState Android-виджет с Clickable, который не доступен для просмотра в ListItems Убедитесь, что Android WebView потребляет события касания Android Build Gradle 2.3.2 Android: есть произвольный просмотр слайда под другим представлением, как и клавиатура программного обеспечения Невозможно преобразовать в измерение: type = 0x1 при запуске приложения на Android 4.1 Android: onPreviewFrame никогда не вызывается без SurfaceView Android использует NTP для синхронизации времени? Android adb (OSX Lion) не распознает Galaxy Nexus, Jelly Bean Почему PLAY_SERVICES_RESOLUTION_REQUEST – 9000 FragmentPagerAdapter не работает над отдыхом фрагмента Доступ к настольному компьютеру через Android-устройство

Как настроить высоту панели действий программно

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

Можно ли программно изменить высоту панели действий?

заранее спасибо

Solutions Collecting From Web of "Как настроить высоту панели действий программно"

Вы можете сделать это с помощью рефлексии (возможно, не очень хорошая идея):

Window window = getWindow(); View v = window.getDecorView(); int actionBarId = getResources().getIdentifier("action_bar", "id", "android"); ViewGroup actionBarView = (ViewGroup) v.findViewById(actionBarId); try { Field f = actionBarView.getClass().getSuperclass().getDeclaredField("mContentHeight"); f.setAccessible(true); f.set(actionBarView, 50); } catch (NoSuchFieldException e) { } catch (IllegalAccessException e) { } 

Ответ RyanCheu работал для меня, но я обнаружил, что если бы я отобразил текст в действии, панель выбора текста появилась в размере панели действий по умолчанию, которая изменила размер активности, которая удалила выделение текста, поэтому было невозможно использовать Копировать и Выберите все функции. В итоге я вернулся к использованию тем, чтобы установить высоту панели действий, и программно изменяя темы с помощью setTheme () и recreate (). Пример кода здесь:

https://stackoverflow.com/a/37974527/462162