Что нужно импортировать или как я могу вызвать разметку макета в местах, отличных от активности?
public static void method(Context context){
//this doesn't work the getLayoutInflater method could not be found
LayoutInflater inflater = getLayoutInflater();
// this also doesn't work
LayoutInflater inflater = context.getLayoutInflater();
}
Я могу звонить getLayoutInflater
только в активности, это ограничение? Что делать, если я хочу создать пользовательский диалог и надувать для него представление, или что, если я хочу получить сообщение Toast с настраиваемым представлением, отображаемым из службы, у меня есть только контекст из службы, у меня нет активности но я хочу показать пользовательское сообщение.
Мне нужен инфлятор в местах кода, которых нет в классе активности.
Как я могу это сделать ?
getSystemService
какой-либо (маловероятной) причине не возвращает объект типа,LayoutInflater
тогда мой код вызовет исключение времени выполнения.Или ...
источник
или
View.inflate(context, layout, parent)
источник
Используя объект контекста, вы можете получить LayoutInflater из следующего кода
источник
источник
Используйте это вместо этого!
источник