将布局添加到ViewGroup Android



我有一个基于ViewGroup的飞行菜单。我希望有一个基本的布局,在任何活动中,我都可以将新的布局插入到视图组中,然后删除它。但它不起作用你能帮帮我吗。

类别:

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    this.root = (FlyOutContainer) this.getLayoutInflater().inflate(R.layout.activity_main, null);
    this.setAdditionalLayout(findViewById(R.id.physical_layout));
    this.setContentView(root);
}

ViewGroup:

    <com.nurielweizmann.calculator.view.viewgroup.FlyOutContainer xmlns:android="http://schemas.android.com/apk/res/android"
                                                              android:layout_width="match_parent"
                                                              android:layout_height="match_parent">
<RelativeLayout
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="#444488"
        android:orientation="vertical"
        android:id="@+id/menu">
............
</RelativeLayout>
</com.nurielweizmann.calculator.view.viewgroup.FlyOutContainer>

功能:

    FlyOutContainer root;
    public void setAdditionalLayout(View view){
        root.addView(view,1);
    }

提前感谢

尝试重写setContentView(int)而不是onCreate(Bundle)

确保基本布局XML有一个ViewGroup(例如FrameLayout)可用于放置每个Activity的内容。

当覆盖setContentView(int)时,先扩展基本布局,然后扩展Activity的布局,并将Activity的布局放置在可用的FrameLayout上。

相关内容

最新更新