У меня есть простой xml, который я хочу раздуть как объект представления java. Я знаю, как надуть вид:Как надуть xml как пользовательский вид без родителя
view = LayoutInflater.from(context).inflate(R.layout.alarm_handling, this);
Но тогда у меня есть мнение, которое является дочерним родителем (это). И тогда запутанная проблема начинается с установки параметров компоновки и наличия дополнительного макета, который мне не нужен. Это намного проще сделать в xml.
С деятельностью, которую вы можете просто вызвать: setContentView(), но с видом, который невозможен.
В конце концов, я хотел бы иметь Java-класс (расширяет ViewSomething), к которому я могу обратиться в другом xml. Я посмотрел на ViewStub, что практически является ответом, за исключением того, что оно является окончательным :(
public class AlarmView extends ViewStub{ //could work if ViewStub wasn't final
public AlarmView (Context context, AttributeSet attrs) {
super(context);
//using methods from ViewStub:
setLayoutResource(R.layout.alarm_handling);
inflate();
}
}
Так как на это? Что продлить, чтобы иметь возможность просто позвонить setContentView() или setLayoutResource()?
Я посмотрел на многие SO ответы, но ни один из них не подходит на мой вопрос.
Я немного озадачен. Я считаю, что вы можете раздуть представление нулевым родителем (I.E. inflate (R.layout.alarm_handling, null) или какой-то вариант), но это очень похоже на то, что вы хотите использовать пользовательский вид из xml, что также вполне возможно. Ваша проблема в том, что вы хотите использовать наставник xml? –
Я не знаю, нужен ли мне специальный надув xml. Я хочу создать пользовательский компонент, который позаботится о своем собственном макете (надуть из xml) без дополнительного (родительского) макета, который, как я думаю, является незаурядным. – bluevoid