Xamarin Android c# Viewstub 只工作一次然后得到空指针

Xamarin Android c# Viewstub only works once and then getting null pointer

我正在尝试使用 viewstub 来设置我的视图,它第一次工作正常,但是如果我再次调用该方法,我会得到一个空指针异常,知道为什么会这样吗?

这是我的代码,我第一次调用它时它运行良好。

            ViewStub stub = FindViewById<ViewStub>(Resource.Id.stub);
            stub.LayoutResource = Resource.Layout.overview;
            stub.Inflate();

然后,当我尝试使用不同的布局再次执行相同的操作时,出现空指针异常

            ViewStub stub = FindViewById<ViewStub>(Resource.Id.stub);
            stub.LayoutResource = Resource.Layout.product_view;
            stub.Inflate();

根据 official documentation

When a ViewStub is made visible, or when inflate() is invoked, the layout resource is inflated. The ViewStub then replaces itself in its parent with the inflated View or Views.

在您调用 stub.Inflate() 后,您的 ViewStub 将被替换为 Resource.Layout.overview。您可以使用 FindViewById()overview 中查看,但无法再查看 ViewStub