Java Android 2.2 SDK-从地图创建微调器?

Java Android 2.2 SDK-从地图创建微调器?,java,android,mobile,android-2.2-froyo,Java,Android,Mobile,Android 2.2 Froyo,基本上,我希望将一个“选定”选项与一个id相关联,因此,不要这样做(我当前的方式): 我会这样做(Hashtable/Vector只是为了黑莓的兼容性): 当前,从微调器中选择的“选项”打印出0或1(基于“否”、“是”)。所以,我的问题是,如果我从一个我不知道其值(我只知道ID)的映射以编程方式设置微调器,我该怎么做 Spinner spinner = new Spinner(this); ArrayAdapter spinnerArrayAdap

基本上,我希望将一个“选定”选项与一个id相关联,因此,不要这样做(我当前的方式):

我会这样做(Hashtable/Vector只是为了黑莓的兼容性):

当前,从微调器中选择的“选项”打印出0或1(基于“否”、“是”)。所以,我的问题是,如果我从一个我不知道其值(我只知道ID)的映射以编程方式设置微调器,我该怎么做

            Spinner spinner = new Spinner(this);
            ArrayAdapter spinnerArrayAdapter = new ArrayAdapter(this,
                    android.R.layout.simple_spinner_dropdown_item, spinnerList);
            spinner.setAdapter(spinnerArrayAdapter);

            spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
                public void onItemSelected(AdapterView<?> arg0, View arg1,
                        int arg2, long arg3) {
                    System.out.println("Selected: " + arg2);

                }

                public void onNothingSelected(AdapterView<?> arg0) {
                    System.out.println("Nothing selected: " + arg0);
                }
            });
微调器微调器=新微调器(此);
ArrayAdapter Spinner ArrayAdapter=新的ArrayAdapter(此,
android.R.layout.simple_微调器_下拉列表_项,微调器列表);
spinner.setAdapter(SpinNearrayaAdapter);
spinner.setOnItemSelectedListener(新的AdapterView.OnItemSelectedListener(){
已选择公共视图(AdapterView arg0、视图arg1、,
整数arg2,长arg3){
System.out.println(“所选:“+arg2”);
}
未选择公共无效(AdapterView arg0){
System.out.println(“未选择任何内容:+arg0”);
}
});

你的问题不是很清楚。你到底想完成什么?

如果您只想显示不同于字符串的简单数据,我认为您应该考虑创建一个自定义适配器。

反转您的映射,您可以根据返回的字符串轻松查找整数ID。

int id = spinnerMap.get(spinner.getSelectedItem());

假设我正在膨胀多个微调器,这意味着我有多个“是”或“否”下拉列表,每个下拉列表都与一个id关联……比如说3、4、5等等。当我从其中一个微调器中选择“否”时,我会得到选择0,1的id(“是”或“否”),还有微调器的id(3、4、5)。类似这样的吗?public void onItemSelected(AdapterView arg0、View arg1、int arg2、long arg3){System.out.println(“Selected:+arg2”);String selectedSpinner=getString(v.getId());}但我仍然看不到您提出的真正问题,因此很难理解您想要实现什么。
            Spinner spinner = new Spinner(this);
            ArrayAdapter spinnerArrayAdapter = new ArrayAdapter(this,
                    android.R.layout.simple_spinner_dropdown_item, spinnerList);
            spinner.setAdapter(spinnerArrayAdapter);

            spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
                public void onItemSelected(AdapterView<?> arg0, View arg1,
                        int arg2, long arg3) {
                    System.out.println("Selected: " + arg2);

                }

                public void onNothingSelected(AdapterView<?> arg0) {
                    System.out.println("Nothing selected: " + arg0);
                }
            });
int id = spinnerMap.get(spinner.getSelectedItem());