Получить путь к папке bin в Virtualenv из скрипта

View s раздуты из макета - как ваш пример TextView - не добавляются к их родительскому ViewGroup с addView(View child), поэтому переопределение этого метода не работает для вас. Вы хотите переопределить addView(View child, int index, ViewGroup.LayoutParams params), в результате чего все остальные addView() перегрузки заканчиваются вызовом.

В этом методе проверьте, является ли добавленный ребенок одним из двух специальных FrameLayout s. Если это так, пусть класс super обрабатывает добавление. В противном случае добавьте дочерний элемент в ваш контейнер FrameLayout.

public class CustomFrameLayout extends FrameLayout {

    private final FrameLayout topLayout;
    private final FrameLayout containerLayout;

    ...

    public CustomFrameLayout(Context context, AttributeSet attrs) {
        super(context, attrs);

        LayoutInflater.from(context).inflate(R.layout.custom, this, true);
        topLayout = (FrameLayout) findViewById(R.id.frame_layout_top);
        containerLayout = (FrameLayout) findViewById(R.id.frame_layout_child_container);
    }

    @Override
    public void addView(View child, int index, ViewGroup.LayoutParams params) {
        final int id = child.getId();
        if (id == R.id.frame_layout_top || id == R.id.frame_layout_child_container) {
            super.addView(child, index, params);
        }
        else {
            containerLayout.addView(child, index, params);
        }
    }
}
28
задан José Tomás Tocino 25 February 2014 в 03:06
поделиться