如何使用 Xamarin iOS PickView 获取价值?

Posted

技术标签:

【中文标题】如何使用 Xamarin iOS PickView 获取价值?【英文标题】:How do I use Xamarin iOS PickView to get the value? 【发布时间】:2014-11-12 02:51:14 【问题描述】:

我刚开始使用 Xamarin,我对两件事感到困惑。如何使用它以及我是否正在搜索正确的关键字以寻求帮助。

如果我想查找某些内容,是否可以将本机 ios 控件视为等效控件?我觉得如果我搜索“如何从 ios 选择器中获取价值”,答案是特定于 objc-c 的。即使试图查看相同的属性,我也没有运气。我觉得 Xamarin 教程/文档杂乱无章且缺乏。 PickView 不在具有文档的 UI 控件列表中。

我在 Xamarin Studio 中也没有看到此 PickViewer 的任何事件。我什至在 Xamarin iOs 中尝试调试模式,但我尝试检查的几乎每个属性似乎都可能是答案给了我一个“未知成员”。

在此示例中,我有一个 Xamarin iOs pickviewer,但无法弄清楚如何检索值,甚至无法对似乎不起作用的所选行发出警报。我假设我也可以将其应用于列表?

设置 PickView 列表

  public override void ViewDidLoad ()
    
        base.ViewDidLoad ();
        pvBankRollAmounts.Model = new UIPickViewBetAmountOptions ();
    

那么我怎样才能获得在 UI 中选择的值呢?我自己找到这些答案的最佳方法是什么?更好的文档?

【问题讨论】:

【参考方案1】:

Xamarin iOS 非常接近 Apple iOS 的处事模式。能够阅读 Obj-C(或 Swift)实际上是有益的,因此您可以查看 Apple 的文档和示例。

Xamarin 将 PickerView sample 作为其示例应用的一部分。

要获取 Selected 项,您需要重写 Model 类中的 Selected 方法。从 C# 的角度来看,这似乎很奇怪,但它是 iOS 中相当常见的模式,通常使用委托模式。您可以创建一个自定义事件并引发它以在您的父类中处理。

public override void Selected (UIPickerView picker, int row, int component)

  // row is the selected row

【讨论】:

以上是关于如何使用 Xamarin iOS PickView 获取价值?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 AppStoreReceiptUrl 在 Xamarin.iOS 中验证 StoreKit 交易

如何在 Xamarin.iOS 中使用 FCM(Firebase 云消息传递)发送 iOS 推送通知

如何设计一个高级的 UIScrollView Xamarin.ios?

如何在 Xamarin(iOS 和 Android)应用程序中使用 Windows 命名空间?

如何使用 Xamarin 在 iOS 13 中获取设备令牌?

如何在 Xamarin(iOS) 中将按钮从右向左移动