`

在Spinner塞入复杂对象,取其key值和value值的解决办法。

 
阅读更多

网上找的都是使用String[]或者ArrayList<String>往Spinner里面塞数据,那假如是个复杂对象呢?比如:ArrayList<Company> 
其实,很简单,重写Company的toString()就可以了; 

Java代码  收藏代码
  1. public class Company {  
  2.   
  3.     public String jjgsdm;//基金公司代码  
  4.     public String jjgsmc;//基金公司名称  
  5.     public String toString(){   
  6.         return jjgsmc;   
  7.     }   
  8. }  

然后就可以使用了: 
Java代码  收藏代码
  1. private ArrayList<Company> companyList=new ArrayList<Company>();  
  2. companyList.add(Company0);  
  3. companyList.add(Company1);  
  4. companyList.add(Company2);  
  5. spinner=(Spinner)findViewById(R.id.simple_text_4);  
  6. adapter = new ArrayAdapter<Company>(mContext,android.R.layout.simple_spinner_item ,companyList);  
  7. adapter.setDropDownViewResource (android.R.layout.simple_spinner_dropdown_item);  
  8. spinner.setAdapter(adapter);  
  9. spinner.setPrompt("选择基金公司:");  
  10. spinner.setOnItemSelectedListener(new OnItemSelectedListener() {  
  11.   
  12.     @Override  
  13.     public void onItemSelected(AdapterView<?> parent, View view,  
  14.                     int position, long id) {  
  15.     // TODO Auto-generated method stub  
  16.                 //String jjgsdm=((Company)spinner.getSelectedItem()).jjgsdm;  
  17.         String jjgsdm=companyList.get(position).jjgsdm;  
  18.         Log.i(tag,"基金公司代码="+jjgsdm);  
  19.     }  
  20.   
  21.     @Override  
  22.     public void onNothingSelected(AdapterView<?> parent) {  
  23.     // TODO Auto-generated method stub  
  24.                   
  25.     }  
  26. });  
分享到:
评论

相关推荐

    android Spinner value值与text值

    本示例“android Spinner value值与text值”旨在教你如何在Spinner中同时获取选中项的显示文本(text)和对应的数据值(value)。在实际应用中,数据值通常用于程序逻辑处理,而显示文本则直接呈现给用户。 1. **...

    MaterialSpinner 自定义Spinner

    然而,系统默认的Spinner样式和交互可能无法满足所有设计需求,这时我们就需要对其进行自定义。"MaterialSpinner"项目就是针对这种情况提供的一种解决方案,它基于Android的Spinner进行了增强,提供了更美观、更符合...

    spinner 键值实现

    ArrayAdapter&lt;String&gt; adapter = new ArrayAdapter(context, android.R.layout.simple_spinner_item, keyValuePairs.keySet()) { @Override public View getView(int position, View convertView, ViewGroup ...

    Spinner

    4. 在Spinner中展示复杂对象,这时可能需要自定义Adapter来渲染每个项目。 总之,Spinner是Android开发中的基础组件,掌握它的使用和原理对于开发高效、用户友好的应用程序至关重要。通过深入研究源码和实践,你...

    Android带设置默认值的Spinner

    在Android开发中,Spinner是一个常用的组件,用于提供一个下拉选择菜单,用户可以在其中选择一个选项。本示例关注的是如何创建一个具有默认值并能自定义显示与下拉效果的Spinner。以下将详细介绍实现这一功能的关键...

    Android spinner

    Android spinner是一个用户界面元素,它可以让用户从列表中选择一个值。当用户点击该组件时,会弹出一个下拉菜单,其中包含多个选项供用户选择。这个组件通常用于节省屏幕空间,因为它在未选择时只会显示一个条目,...

    dialog和spinner实例

    在Android开发中,`Dialog`和`Spinner`是两种常见的用户界面组件,它们在与用户交互时发挥着关键作用。`Dialog`通常用于显示警告、确认或者提供额外信息,而`Spinner`则作为下拉选择菜单,让用户在一组预定义的选项...

    android中的spinner动态加载内容

    本篇文章将详细讲解如何在Android中动态加载Spinner的内容,同时结合"源码"和"工具"这两个标签,我们将深入探讨其实现原理。 首先,我们来了解Spinner的基本使用。Spinner通常在布局文件中定义,如`res/layout/...

    extjs 的spinner方法实例

    在这个例子中,`fieldLabel` 属性定义了字段的标签,`value` 设置了初始值,`incrementValue` 和 `decrementValue` 分别定义了每次点击向上和向下箭头时数值的变化量。 Spinner 还提供了一些关键的方法,例如: 1....

    ListView中Spinner的使用

    本篇文章将深入探讨如何在ListView中集成和使用Spinner,以及解决与之相关的事件处理和状态保持问题。 首先,Spinner的基本用法包括创建Spinner对象、设置Adapter和定义监听器。在Android中,Spinner通常通过...

    jquery ui spinner微调 粗细

    标题"jquery ui spinner微调 粗细"指的是在使用jQuery UI Spinner组件时,如何设置它的微调步长,以便在“粗”和“细”两个不同的调控范围内进行数值调整。微调步长决定了每次点击上下箭头时数值增加或减少的大小,...

    自定义spinner

    自定义Spinner可以帮助我们根据应用程序的需求调整其外观和行为,以提供更好的用户体验。在这个"自定义spinner的小列子"中,虽然存在一些缺陷,但我们可以从中学到一些关键的知识点。 首先,我们要了解Spinner的...

    自定义Spinner实现初始项不参与列表显示(Spinner添加“请选择”)

    在这个Adapter中,我们重写了`getView()`和`getDropDownView()`方法,以区别显示在Spinner控件上的初始项和下拉列表中的项。 ### 3. 使用自定义Adapter 在Activity或Fragment中,我们需要实例化自定义Adapter,并...

    条件下拉筛选 NiceSpinner

    然而,原生的Spinner在交互上相对简单,可能无法满足一些复杂的需求,比如动态筛选、自定义样式等。这就是NiceSpinner发挥作用的地方。 NiceSpinner的核心功能之一是条件筛选。通过设置特定的条件,用户点击列表中...

    spinner下拉框使用详情

    在Android开发中,Spinner是一...总之,Spinner在Android开发中扮演着重要角色,熟练掌握其用法和自定义技巧对于提升应用的交互体验至关重要。通过不断实践和探索,开发者能够灵活运用Spinner,满足各种场景下的需求。

    extjs的spinner

    通过自定义 `Spinner` 类和其方法,我们可以实现更加灵活和功能丰富的控件。同时,通过对 `Spinner` 的不同配置,可以满足不同场景的需求,如数值选择、日期选择和时间选择等。希望这些知识点能够帮助你在实际开发...

    javafx2 : 支持使用微调(spinner)控制的数字的文本框(NemberTextField)

    为了将`NumberTextField`与`Spinner`关联起来,你需要监听`NumberTextField`的`valueProperty()`,并在值改变时更新`Spinner`的值。同样,当`Spinner`的值改变时,也要更新`NumberTextField`的值。 ```java ...

    android spinner 自定义 字体大小

    在Android开发中,Spinner是一个常用的UI组件,它用于在下拉列表中展示多个选项供用户选择。当需要自定义Spinner的字体大小时,开发者需要对Spinner的样式进行一些定制。以下是一些关于如何自定义Android Spinner...

    spinner代码和程序

    在Android开发中,Spinner是一个非常重要的控件,它通常用于展示一个下拉列表供用户选择。Spinner提供了一种紧凑的...在实践中,不断探索和优化,你将能够掌握Spinner的高级用法,如分组、过滤以及与其他组件的交互。

Global site tag (gtag.js) - Google Analytics