IOS 上的 Xamarin 表单选择器
Xamarin Forms Picker on IOS
我正在使用 Xamarin Forms 选择器控件,当控件出现在 Android 设备上时,它上面有 2 个按钮 "OK" 和 "Cancel",在 [=17] =] 但是我只得到 "Done" 按钮,它导致用户无法执行取消操作以放弃其新选择并强制他滚动回原始选择,有没有办法让这个按钮?或者一些解决方法?
不,这很不幸,因为 iOS 本身没有任何内在的东西可以阻止它。事实上,许多应用程序允许您取消您的选择。
这只是 Xamarin 的怪癖之一。
您可以使用
iOSSpecific:Picker.UpdateMode="WhenFinished"
以便仅当用户按下“完成”按钮时才设置选择器值 - 与您要求的不完全相同,但作为替代方案也不错。
你需要这个名字space
xmlns:iOSSpecific="clr-namespace:Xamarin.Forms.PlatformConfiguration.iOSSpecific;assembly=Xamarin.Forms.Core"
并像这样在您的选择器中使用
<Picker ItemsSource="{Binding Options}"
SelectedItem="{Binding Result}"
ItemDisplayBinding="{Binding Label}"
iOSSpecific:Picker.UpdateMode="WhenFinished" />
我正在使用 Xamarin Forms 选择器控件,当控件出现在 Android 设备上时,它上面有 2 个按钮 "OK" 和 "Cancel",在 [=17] =] 但是我只得到 "Done" 按钮,它导致用户无法执行取消操作以放弃其新选择并强制他滚动回原始选择,有没有办法让这个按钮?或者一些解决方法?
不,这很不幸,因为 iOS 本身没有任何内在的东西可以阻止它。事实上,许多应用程序允许您取消您的选择。
这只是 Xamarin 的怪癖之一。
您可以使用
iOSSpecific:Picker.UpdateMode="WhenFinished"
以便仅当用户按下“完成”按钮时才设置选择器值 - 与您要求的不完全相同,但作为替代方案也不错。
你需要这个名字space
xmlns:iOSSpecific="clr-namespace:Xamarin.Forms.PlatformConfiguration.iOSSpecific;assembly=Xamarin.Forms.Core"
并像这样在您的选择器中使用
<Picker ItemsSource="{Binding Options}"
SelectedItem="{Binding Result}"
ItemDisplayBinding="{Binding Label}"
iOSSpecific:Picker.UpdateMode="WhenFinished" />