2016-08-03 2 views
0

У меня есть layout.xml, который является FrameLayout, и он имеет другой FrameLayout внутри.
У меня есть класс Field подклассов FrameLayout, который содержит логику, фоновую обработку цвета и т.д.Наращивание макета с помощью FrameLayout и добавление его в LinearLayout

Я хочу сделать что-то вроде этого:

Field f = new Field(width, height, color); //args can be changed if needed. 
linearLayout.addView(f); 

Внутри Field класса в конструкторе, что я делаю это:

LayoutInflater inflater = (LayoutInflater) getContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
View view = inflater.inflate(R.layout.game_board_field, null); 

Что-то добавлено к linearLayout beccause его количество детей не равно 0, но я не вижу красный квадрат, который Field есть. Есть ли что-то, что я делаю неправильно (ясно)?

+0

Решено изменить метод инфляции. View view = inflate (getContext(), R.layout.fragment_game_board_field, это); Теперь что-то появляется в макете, но его форма перепутана. – justmatt

ответ

0

Да, это было так.

View view = inflate(getContext(), R.layout.fragment_game_board_field, this); 

Кроме того, я должен был исправить другие свойства в XML, потому что я бросил Frament подход и решил надуть макеты вручную.

Смежные вопросы