У меня есть приложение Android 3.0 для планшетов.В этом приложении я должен вставить несколько ViewsGroup в макет, и каждый из этих ViewsGroup имеет несколько представлений.Вот код onCreate для Activity:
setContentView(R.layout.main);
params = new LayoutParams(500, 600);
ViewGroup v1 = new Bar(this);
this.addView(v1,params);
ViewGroup v2 = new Bar(this);
this.addView(v2,params);
Этот класс Bar расширяет ViewGroup и имеет несколько представлений внутри него.Проблема в том, что на экране отображаются только виды первой группы ViewGroup (v1).Но я вижу, что он добавляет оба ViewGroup к содержанию, так как, например, я могу установить фон второго и я увижу результаты.Но виды, которые находятся во второй ViewGroup, не отображаются на экране.Сначала я попытался изменить порядок, v2, и все виды внутри v2 были нарисованы, а те, что в v1 - нет.Я думаю, что это может иметь какое-то отношение к методу onLayout внутри класса Bar, который я добавлю ниже:
@Override
protected void onLayout(boolean arg0, int arg1, int arg2, int arg3, int arg4) {
for(int nI = 0; nI < this.getChildCount(); nI++){
this.getChildAt(nI).layout(arg1, arg2, arg3, arg4);
}
}
Есть ли у этого метода какие-либо проблемы?
Кстати, я использую LinearLayout.
<LinearLayout android:background="#C6D7D2" android:orientation="horizontal" android:id="@+id/container" android:layout_width="wrap_content" android:layout_height="wrap_content"> </LinearLayout>