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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/magento/5.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
C# 在Xamarin表单的导航页面中添加搜索栏_C#_Xamarin_Xamarin.forms - Fatal编程技术网

C# 在Xamarin表单的导航页面中添加搜索栏

C# 在Xamarin表单的导航页面中添加搜索栏,c#,xamarin,xamarin.forms,C#,Xamarin,Xamarin.forms,我遵循这些教程在Xamarin的导航页面中实现搜索栏 我有一个简单的ContentPage,我在App.cs的NavigationPage表单中打开它: var navigationPage = new Xamarin.Forms.NavigationPage(new Home()); navigationPage.On<iOS>().SetPrefersLargeTitles(true); MainPage = navigationPage; var-navigati

我遵循这些教程在Xamarin的
导航页面中实现
搜索栏

我有一个简单的
ContentPage
,我在App.cs的
NavigationPage
表单中打开它:

var navigationPage = new Xamarin.Forms.NavigationPage(new Home());
navigationPage.On<iOS>().SetPrefersLargeTitles(true);
MainPage = navigationPage;
var-navigationPage=new-Xamarin.Forms.navigationPage(new-Home());
navigationPage.On().SetPrefersLargeTitles(true);
主页=导航页面;
运行项目时,我在渲染器页面的以下行中遇到错误:

Toolbar GetToolbar() => CrossCurrentActivity.Current.Activity.FindViewById<Toolbar>(Resource.Id.toolbar);
Toolbar GetToolbar()=>CrossCurrentActivity.Current.Activity.FindViewById(Resource.Id.Toolbar);
引发的异常是:

System.InvalidCastException:'无法将类型为'Android.Support.V7.Widget.Toolbar'的实例转换为类型为'Android.Widget.Toolbar'

我不明白为什么会出现这个错误,尽管它表明它在铸造方面有问题

有人知道我的错误在哪里吗?

解决方案 将有错误的行更改为

var toolbar = CrossCurrentActivity.Current.Activity.FindViewById<Android.Support.V7.Widget.Toolbar>(Resource.Id.toolbar);
或者,如果您仍然需要使用Android.Widget
,则可以使用别名:

using Android.Widget;
using V7Toolbar = Android.Support.V7.Widget.Toolbar;
...

// This Toolbar refers to the one in V7!
V7Toolbar toolbar = CrossCurrentActivity.Current.Activity.FindViewById<V7Toolbar>(Resource.Id.toolbar);
使用Android.Widget;
使用V7Toolbar=Android.Support.V7.Widget.Toolbar;
...
//此工具栏指的是V7中的工具栏!
V7Toolbar-toolbar=CrossCurrentActivity.Current.Activity.FindViewById(Resource.Id.toolbar);
using Android.Widget;
using V7Toolbar = Android.Support.V7.Widget.Toolbar;
...

// This Toolbar refers to the one in V7!
V7Toolbar toolbar = CrossCurrentActivity.Current.Activity.FindViewById<V7Toolbar>(Resource.Id.toolbar);