Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/xamarin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.net 如何在Android演示文稿中显示Xamarin.Forms内容页等?_.net_Xamarin_Android Fragments_Xamarin.forms_Xamarin.android - Fatal编程技术网

.net 如何在Android演示文稿中显示Xamarin.Forms内容页等?

.net 如何在Android演示文稿中显示Xamarin.Forms内容页等?,.net,xamarin,android-fragments,xamarin.forms,xamarin.android,.net,Xamarin,Android Fragments,Xamarin.forms,Xamarin.android,我的Xamarin.Forms应用针对一款奇特的多屏幕Android设备。我正在尝试使用Android的MediaRouter在辅助屏幕上显示一个Xamarin.Forms内容页面。我已经能够使用MediaRouter API在辅助屏幕上显示Android演示文稿,但无法在我的Xamarin.Forms视图中进行下一步和交换 我知道在原生Xamarin.Android布局中显示ContentPage的唯一方法是将布局中的片段替换为使用Xamarin.Forms CreateSupportFrag

我的Xamarin.Forms应用针对一款奇特的多屏幕Android设备。我正在尝试使用Android的MediaRouter在辅助屏幕上显示一个Xamarin.Forms内容页面。我已经能够使用MediaRouter API在辅助屏幕上显示Android演示文稿,但无法在我的Xamarin.Forms视图中进行下一步和交换

我知道在原生Xamarin.Android布局中显示ContentPage的唯一方法是将布局中的片段替换为使用Xamarin.Forms CreateSupportFragment API创建的片段,如官方的Xamarin.Forms示例所示

但是,这种方法使用FragmentManager来执行交换。据我所知,没有FragmentManager能够访问演示文稿显示的布局中的项目。因此,似乎不可能使用“Native2Forms”技术在辅助屏幕上显示ContentPage

因此,假设我的演示文稿显示一个包含FrameLayout的布局:

  <FrameLayout
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:id="@+id/fragment_frame_layout" />
将引发以下异常:

Java.Lang.IllegalArgumentException:“未找到片段页面扩展的id 0x7f0900fa(com.myapp.mobileapp:id/fragment\u frame\u layou)的视图,该id为嵌入的支持片段{c1a5ea}(a4ea714e-f673-4f4d-b2e2-27cd37bbdf4c)id=0x7f0900fa}”

如何在原生Android和Xamarin.Forms之间架起一座桥梁,在二级屏幕的演示文稿中显示ContentPage?我会接受任何允许我嵌入任何种类的Xamarin.Forms视图的答案


注意:我尝试了使用的方法,而不是MediaRouter方法,但无法识别辅助屏幕。因此,SDK似乎是特定于Surface Duo的,不能用于我的设备。

根据您的描述,您希望在Android项目中添加ContentPage,然后在辅助屏幕上精确显示此ContentPage。ContentPage实际上是在Forms项目中定义的。我想在引用Android项目中实例化它,或者从Forms项目中传递它。重要的部分是在Android设备的第二屏幕上显示它。听起来你需要添加Android代码。(我对这个软件包一无所知。)谢谢@ToolmakerSteve——你指的是Surface Duo SDK,我已经把它作为一个潜在的解决方案排除在外了(请参见问题末尾的注释)。啊,我没有看到这个注释。正如你所发现的,它不会按原样工作。我的意思是,如果有一个github有它的源代码,那么去那里,提出一个问题,你希望它在该设备上工作,或者询问是否有人可以将Android代码添加到该SDK中。我怀疑X-Forms不能满足你的要求,没有一些低级的帮助。该SDK似乎是在添加该帮助时获得帮助的正确位置。
fragmentManager
    .BeginTransaction()
    .Replace(Resource.Id.fragment_frame_layout, noteEntryFragment)
    .Commit();