java.lang.IllegalStateException:ViewStub必须具有非null的ViewGroup viewParent

时间:2014-07-20 09:17:42

标签: android layout view viewstub

以下是我的布局文件:activity_start.xml

    <LinearLayout
    android:id="@+id/ll_main"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="vertical">

    <ViewStub
        android:id="@+id/view_stub_main"
        android:layout_width="match_parent"
        android:layout_height="250dp"
        android:layout_marginBottom="@dimen/dp_8"/>

    </LinearLayout>

我在我的活动中做了

    @Override
    protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_start);

    ViewStub viewStub = (ViewStub)findViewById(R.id.view_stub_main);
    viewStub.setLayoutResource(R.layout.test_layout);
    View view =  viewStub.inflate();
    }

这很好用。 但是当我尝试从我的Activity动态创建ViewStub而不在xml中声明 ViewStub 时:

    ViewStub viewStub = new ViewStub(this,R.layout.test_layout);
    View view = viewStub.inflate();

这导致错误: java.lang.IllegalStateException:ViewStub必须具有非null ViewGroup viewParent

我在做错了! 提前谢谢。

0 个答案:

没有答案