【问题标题】:Get selected value name from Spinner从 Spinner 获取选定的值名称
【发布时间】:2014-05-09 11:37:46
【问题描述】:

我正在显示来自 xml 文件的员工姓名,并通过 Spinner 显示。它通过 ArrayAdapter 显示,但如果我选择任何一个值,我需要将所选值显示为 toast。但它没有显示。我收到字符串 Cast 错误。

List<Employee> employees = null;
        try {
            XmlPullParserHandler parser = new XmlPullParserHandler();
            InputStream is=getAssets().open("employees.xml");
            employees = parser.parse(is);

            ArrayAdapter<Employee> adapter =new ArrayAdapter<Employee>(this,android.R.layout.simple_list_item_1, employees);
           // listView.setAdapter(adapter);

             adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);  
            //Setting the ArrayAdapter data on the Spinner  
            spin.setAdapter(adapter);  

            String employee=(String)spin.getSelectedItem();

            Toast.makeText(getApplicationContext(), "name is :"+employee, Toast.LENGTH_SHORT).show();

        } catch (IOException e) {e.printStackTrace();}

【问题讨论】:

    标签: android spinner android-xml android-xmlpullparser


    【解决方案1】:
    // try this way,hope this will help you....
    
    spin.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
                @Override
                public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
                    Employee employee = employees.get(position);
                }
    
                @Override
                public void onNothingSelected(AdapterView<?> parent) {
    
                }
    });
    

    【讨论】:

    • 如何将选定的名称值放入字符串?
    • 您在 Employee 类中为 name 声明的字段是什么?
    【解决方案2】:
     spin.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
            @Override
            public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
               String employee=spin.getSelectedItem.toString();
            }
    
            @Override
            public void onNothingSelected(AdapterView<?> parent) {
    
            }
     });
    

    【讨论】:

    • 我需要检查我的字符串是否相等,我需要进行另一项活动。但它不起作用。我用过 if(employee.equal("raj"){ }
    猜你喜欢
    • 1970-01-01
    • 2023-03-02
    • 1970-01-01
    • 2014-01-04
    • 1970-01-01
    • 2021-07-29
    • 1970-01-01
    • 2020-02-29
    • 1970-01-01
    相关资源
    最近更新 更多