У меня есть ImageView, который я прикрепляю к MenuItem как к ActionView (элемент появляется в ActionBar). Макет для этого представления поступает из XML. Я раздуваю его так:
ImageView actionView = (ImageView) layoutInflater.inflate(
R.layout.action_view_layout, null);
Это работает нормально. Однако; прохождение null для root в вызове inflate() делает Lint yell у меня:
Избегайте передачи null в качестве корня представления (необходимо разрешить компоновку параметры на корневом элементе раздутого макета)
Я могу, по-видимому, обойтись без корня в моем конкретном случае, но я предпочел бы, чтобы код был как можно более правильным. Проблема в том, что я не уверен, какой View следует использовать в качестве корня здесь. Этот ответ говорит, что это должен быть "виджет, окружающий объекты вида, которые вы хотите раздуть". Но что это значит? Один для панели действий? Активность? Что-то еще полностью?
Обновление: Чтение ответов заставило меня подозревать, что я должен сделать следующее:
- Получить
ActionBarView, соответствующийMenuItem - Получить свой корень
- Вставьте корень в
ViewGroup - Передайте результат на надув.
Это похоже на работу. Может ли кто-нибудь подтвердить или опровергнуть, нужно ли это делать?