【发布时间】:2016-07-23 03:14:37
【问题描述】:
我目前正在研究 Xamarin Studio,并正在创建一个带有列表视图的简单示例应用程序。这应该使用“拉动刷新”。我已经将 Xamarin.Forms 依赖项更新为 2.1.0.6529,无论在何处使用它 - 对应的 packages.config 包含以下几行:
<package id="Xamarin.Android.Support.v4" version="23.1.1.1" targetFramework="MonoAndroid60" />
<package id="Xamarin.Forms" version="2.1.0.6529" targetFramework="MonoAndroid60" />
我仔细检查了每一部分——PCL 部分、iOS 部分和 Android 部分——都包含它。
我的列表视图在 XAML 中定义如下:
<ListView x:Name="SearchResults" ItemSelected="OnItemSelected" IsPullToRefreshEnabled="true" Refreshing="OnRefreshing">
<!-- ListView definition -->
</ListView>
我实现了OnItemSelected 和OnRefreshing 方法。
当我在 IOS 模拟器中运行应用程序时,Pull to refresh 工作,但是当我在 Android 上运行它时,我收到一个 XamlParseException 和消息 No Property of name IsPullToRefreshEnabled found 的行,上面写着,
this.LoadFromXaml(typeof(SearchPage));
在我的SearchPage.xaml.g.cs.
Android 项目设置为针对最新平台和最低 API 级别 15 构建,我正在尝试在 API 级别 19 上运行它。据我了解,这应该可以...
这里有什么问题?
【问题讨论】:
-
您是否已验证您的 Android 项目中的 Xamarin.Forms 包引用也已更新? (不仅仅是您 PCL 项目中的参考)
-
是的,我多次验证了这一点。我发布的 packages.config 摘录确实来自 Android 项目。
-
您在 19 上运行它,但您的目标是什么?我问是因为它适用于我的应用程序,该应用程序设置为最低 15 和目标 23(即使我正在测试的设备是 19)。
-
我现在使用
git clean -fdx进行了清理,但情况变得更糟 - Android 应用程序现在显示The type or namespace 'Xamarin' could not be found in the global namespace。但也许 Acr.UserDialogs 是罪魁祸首,因为它不允许我更新 Acr.Support。 -
原来 ACR UserDialogs 确实是导致问题的那个。它需要较新版本的 Xamarin.Forms 所需的旧版本的依赖库。必须找到替代方案,然后......
标签: c# android ios xamarin.android xamarin.forms