页面渲染器导航

时间:2018-01-17 16:32:04

标签: android android-fragments xamarin xamarin.forms xamarin.android

我有CameraPage,它是Xamarin Forms中的内容页面。对于这个CameraPage,我有一个名为CameraPageRenderer的PageRenderer,用于Xamarin.Android。

在CameraPageRenderer中,我使用

启动片段
mActivity.FragmentManager.BeginTransaction().Add(Resource.Id.container, 
CameraFragment.NewInstance(this)).Commit();

该片段使用Android的Camera2 API提供流。在按下捕获按钮时,我想导航到下一个内容页面,但我一直遇到一些问题。

在我的CameraPageRenderer中,我有以下方法:

public void NavigateFilteredImagePage() {
            ((ImageDetection.CameraPage)Element).NavigateToFilterPage();
}

在我的CameraPage中我有:

public void NavigateToFilterPage()
{
            Navigation.PushAsync(new FilteredImagePage());
}

保存图像后,我从相机片段中调用 NavigateFilteredImagePage()

但我一直遇到以下错误,

Java.Lang.IllegalArgumentException: No view found for id 0x1 (unknown) for fragment FragmentContainer{f980387 #2 id=0x1}

有什么方法可以解决这个问题,还是有其他方法可以从PageRenderer导航到ContentPage?

1 个答案:

答案 0 :(得分:0)

问题发生了,因为我使用的是SetContentView(...)搞砸了MainPage。 Xamarin.Forms只有一个Android活动。

应该覆盖PageRenderer中的OnLayout方法。