Android/C#:防止启动时出现旋转式吐司
问题:关于如何在Android中实现微调器,我遵循了不同的教程,例如。然而,当应用程序第一次打开时,祝酒会立即进行,用户无需选择任何内容 我的解决方案:我尝试创建一个布尔变量,即在启动时将其设置为“false”。只有当布尔值设置为“true”时,toast才会显示。此解决方案有效:启动时不进行烤面包,但如果用户必须选择第一个项目(默认情况下选择),则不进行烤面包。在用户选择不同的选项并随后重新选择第一个选项后,将仅显示第一个项目的toast。但这不是一个大问题。我的代码如下所示 在我的OnCreate方法中,我有以下内容:Android/C#:防止启动时出现旋转式吐司,c#,android,xamarin,C#,Android,Xamarin,问题:关于如何在Android中实现微调器,我遵循了不同的教程,例如。然而,当应用程序第一次打开时,祝酒会立即进行,用户无需选择任何内容 我的解决方案:我尝试创建一个布尔变量,即在启动时将其设置为“false”。只有当布尔值设置为“true”时,toast才会显示。此解决方案有效:启动时不进行烤面包,但如果用户必须选择第一个项目(默认情况下选择),则不进行烤面包。在用户选择不同的选项并随后重新选择第一个选项后,将仅显示第一个项目的toast。但这不是一个大问题。我的代码如下所示 在我的OnCre
boolToast = false;
Spinner spinner = FindViewById<Spinner>(Resource.Id.spinner);
spinner.SetSelection(0, false);
spinner.ItemSelected += new EventHandler<AdapterView.ItemSelectedEventArgs>(Spinner_ItemSelected);
var adapter = ArrayAdapter.CreateFromResource(this, Resource.Array.array, Android.Resource.Layout.SimpleSpinnerItem);
adapter.SetDropDownViewResource(Android.Resource.Layout.SimpleSpinnerDropDownItem);
spinner.Adapter = adapter;
我已经对它感到满意了,但我想知道是否有一种更优雅或更合适的方式来实现这一点。我还看到了一些其他相当类似的问题,但这些问题大部分都是我非常不熟悉的Java语言 在将适配器分配给微调器并对其进行任何初始设置后,设置
微调器。ItemSelected
。我确实尝试过(在spinner.Adapter=Adapter;
之后),但没有任何区别。
private void Spinner_ItemSelected(object sender, AdapterView.ItemSelectedEventArgs e)
{
Spinner spinner = (Spinner)sender;
string toast = string.Format("Selected item is {0}", spinner.GetItemAtPosition(e.Position));
if (boolToast == true)
{
Toast.MakeText(this, toast, ToastLength.Long).Show();
}
boolToast = true;
}