简体   繁体   English

在xamarin.Android中选择第一个微调器时将填充第二个微调器

[英]2nd spinner populates on selection of the first in xamarin.Android

Goodday Am New to xamarin.Android and i have been dealing with how to Populate second spinner based on first Option and yet i havent been successful. Goodaday xamarin.Android的新手,我一直在研究如何根据第一个选项填充第二个微调器,但我没有成功。 ex. 例如 i have a spinner "country" with array List i want if user selects "United States", the second spinner should be Populated immediately with states in the US. 如果用户选择“美国”,我有一个微调器“国家”,其数组为“我要”,则第二个微调器应立即填充美国的州。 The examples am seeing are those of Java. 看到的例子是Java的例子。 Please Help me Out. 请帮帮我。 Thank you Here is what i have tried out 谢谢这是我尝试过的

spinner.ItemSelected += new EventHandler<AdapterView.ItemSelectedEventArgs>(spinner_ItemSelected);
        var adapter = ArrayAdapter.CreateFromResource(
                view.Context, Resource.Array.planets_array, Android.Resource.Layout.SimpleSpinnerItem);

        adapter.SetDropDownViewResource(Android.Resource.Layout.SimpleSpinnerDropDownItem);
        spinner.Adapter = adapter;
        if (spinner.SelectedItemPosition == 0)
        {
            var adapter1 = ArrayAdapter.CreateFromResource(
                    view.Context, Resource.Array.plane_array, Android.Resource.Layout.SimpleSpinnerItem);

            adapter1.SetDropDownViewResource(Android.Resource.Layout.SimpleSpinnerDropDownItem);
            spinner.Adapter = adapter1;
        }


        return view;

    }
    private void spinner_ItemSelected(object sender, AdapterView.ItemSelectedEventArgs e)
    {

    }

    private void spinner1_ItemSelected(object sender, AdapterView.ItemSelectedEventArgs e)
    {

    }

But the second spinner wont populate. 但是第二个微调器不会出现。

Well what you need to do involves the following steps : 好吧,您需要执行以下步骤:

  • Add events and spinner objects as follows : 添加事件和微调器对象,如下所示:

     Spinner _spinner1,_spinner2; _spinner=FindViewById<Spinner>(Resource.Layout._spinner1); _spinner.FindViewById<Spinner>(Resource.Layout._spinner2); _spinner1.ItemSelected += ItemSelected_Spinner1; _spinner2.ItemSelected += ItemSelected_Spinner2; 
  • On itemSelected of the first spinner enable the second: 在第一个微调器的itemSelected上启用第二个:

      private void ItemSelected_Spinner1(object sender, AdapterView.ItemSelectedEventArgs e) { _spinner2.Clickable="true"; } 
  • Also update the spinner adapter content at the end of the event as per your need 还根据需要在活动结束时更新微调适配器内容

      var adapter1 = ArrayAdapter.CreateFromResource( view.Context, Resource.Array.plane_array, Android.Resource.Layout.SimpleSpinnerItem); adapter1.SetDropDownViewResource(Android.Resource.Layout.SimpleSpinnerDropDownItem); _spinner2.Adapter = adapter1; 

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM