В своем файле composite_component.xml
попробуйте изменить эту строку:
<com.cc.CompositeComponent
на следующее:
<LinearLayout
А затем создайте второй макет, который будет использоваться в вашей деятельностипередает в setContentView()
:
Файл: composite_activity_layout.xml
<com.cc.CompositeComponent
android:id="@+id/my_composite"
<!-- other stuff ->>
Файл: CompositeActivity.java
protected void onCreate( Bundle state ) {
super.onCreate( state );
setContentView(R.layout.composite_activity_layout);
// ...
}
Похоже, что вы делаете, вызывая рекурсивную инфляцию макета.Вы надуваете CompositeComponent
, а затем в методе onFinishInflate()
, CompositeComponent
раздувает другую копию самого себя.
Также вы можете захотеть изучить использование тега слияния Android избегайте того, чтобы этот дополнительный LinearLayout
слонялся вокруг.