我有一个包含项目列表的 xamarin 选择器,我想在 iPhone 上按下“完成”按钮和 Android 上按下“确定”按钮时删除选择器。
我有删除选择器的代码。但我不知道 event_Handler 可能是什么。
Code:
Picker picker = new Picker
{
Title = "What's in the slot?",
VerticalOptions = LayoutOptions.CenterAndExpand
//HorizontalOptions = LayoutOptions.Center
};
private void Displaypickerview(int row, int column)
{
if (status == "filling board")
{
foreach (string text in pickerText)
{
picker.Items.Add(text);
}
foreach (string ore in oreLevels)
{
picker.Items.Add(ore);
}
picker.SelectedIndexChanged += (sender, args) =>
{
if (picker.SelectedIndex == -1)
{
}
else
{
//change value of cell and button
Picker picker = (Picker)sender;
int index = picker.SelectedIndex;
if (index < pickerText.Length)
{
board[row, column].Text = pickerText[index - 1];
}
else {
board[row, column].Text = oreLevels[index - 1 - pickerText.Length];
}
}
};
}
else if (status == "choosing item")
{
}
}
iPhone 上的示例:
现在有一个特定于平台的配置选项,可让您在 iOS 上启用此功能。
您指定一个PickerMode
在特定选择器上,仅在有人在 iOS 上点击“完成”后才进行选择。
<ContentPage ...
xmlns:ios="clr-namespace:Xamarin.Forms.PlatformConfiguration.iOSSpecific;assembly=Xamarin.Forms.Core">
<StackLayout Margin="20">
<Picker ... Title="Select a monkey" ios:Picker.UpdateMode="WhenFinished">
...
</Picker>
...
</StackLayout>
</ContentPage>
The Picker.On<iOS>
方法指定此特定于平台的仅在 iOS 上运行。 Picker.SetUpdateMode方法,在Xamarin.Forms.PlatformConfiguration.iOSSpecific
命名空间,用于控制何时发生项目选择,UpdateMode 枚举提供两个可能的值:
Immediately
– 当用户浏览选取器中的项目时发生项目选择。这是 Xamarin.Forms 中的默认行为。
WhenFinished
– 仅当用户按下选择器中的“完成”按钮后才会发生项目选择。
阅读文档以获取有关控制的更多信息。https://learn.microsoft.com/sr-latn-rs/xamarin/xamarin-forms/platform/ios/picker-selection https://learn.microsoft.com/sr-latn-rs/xamarin/xamarin-forms/platform/ios/picker-selection
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)