为了实现在android的spinner中绑定Id值,可以自定义适配器,但是如果一个activity有多个spinner,就需要多声明几个适配器,很麻烦,查看适配器的源码其实就会发现,其实没有必要修改适配器,直接往适配器里面传对象,然后重写对象的toString()方法就可以实现。
首先先声明一个对象,并重写对象的toString()方法,如下:
public class CItem { private String ID = ""; private String Value = ""; public CItem () {} public CItem (String _ID, String _Value) { ID = _ID; Value = _Value; } @Override //适配器在显示数据的时候,如果传入适配器的对象不是字符串,直接就使用obj.toString() public String toString() { // TODO Auto-generated method stub return Value; } public String GetID() { return ID; } public String GetValue() { return Value; } }
然后声明对象实例并加入到arraylist里面,并设置spinner的适配器setAdapter
Spinner Sp = (Spinner)findViewById(int id); List lst = new ArrayList(); CItem ct = new CItem ("022","天津"); lst.Add(ct); ArrayAdapter Adapter = new ArrayAdapter(context, android.R.layout.simple_spinner_item, lst); Sp.setAdapter(Adapter);
取值:
如果取item值则可以直接取:
Sp.getSelectedItem.ToString()或者:((CItem)Sp.getSelectedItem).GetValue() ;
如果ID值则可以这样取:
((CItem)Sp.getSelectedItem).GetID();
相关推荐
可以设置其属性如`android:id`(用于程序中引用)、`android:layout_width`和`android:layout_height`来决定其大小位置,以及`android:entries`来指定初始的条目列表,通常这个列表来自于一个字符串数组资源。...
为了自定义Spinner中的每个条目,你需要创建一个适配器(Adapter),如ArrayAdapter,将数据与视图绑定。例如,你可以创建一个包含多个字符串的数组,然后将其传递给ArrayAdapter的构造函数: ```java String[] ...
- **添加Spinner到布局**:首先,在XML布局文件中添加Spinner元素,通过`android:id`设置唯一标识,`android:layout_width`和`android:layout_height`指定尺寸。 ``` <Spinner android:id="@+id/spinner" ...
在Xamarin.Android开发中,Spinner是一个非常常用的控件,它提供了下拉选择的功能,类似于iOS中的 picker view。在这个“xamarin android spinner 简单例子”中,我们将深入探讨如何在Xamarin环境中创建并使用...
你可以通过`<Spinner>`标签定义它的位置、大小等属性,并使用`android:id`来为它指定一个唯一标识。例如: ```xml <Spinner android:id="@+id/my_spinner" android:layout_width="match_parent" android:layout...
在这个例子中,`custom_spinner_item.xml`是自定义的Spinner条目布局,可以自由设计以满足视觉需求。 接下来,我们需要在Activity中实例化Spinner并设置Adapter。首先,通过`findViewById()`找到Spinner,然后创建...
在Spinner中,我们可以为每个条目指定一个自定义布局文件。这可以通过在Adapter的构造函数中传入布局资源ID来实现。例如,如果有一个名为`item_spinner.xml`的布局文件,其中定义了自定义的视图结构,那么在创建...
Android spinner是一个用户界面元素,它可以让用户从列表中选择一个值。当用户点击该组件时,会弹出一个下拉菜单,其中包含多个选项供用户选择。这个组件通常用于节省屏幕空间,因为它在未选择时只会显示一个条目,...
4. `getItemId(int position)`: 返回指定位置数据项的唯一ID,一般在使用数据库时会用到。 在网络数据的情况下,我们可能需要先异步加载数据,然后在数据加载完成后更新Adapter。例如,我们可以使用AsyncTask或其他...
这需要在省份Spinner的OnItemSelectedListener中实现,根据省份ID查找对应的市级数据,并更新市级Spinner的Adapter。 7. **简洁易懂**:该项目的标签为"简洁,易懂",这意味着代码应该有良好的可读性和组织性。代码...
在XML布局文件中,通过`<Spinner>`标签添加Spinner,可以设置其属性如id、宽高、样式等。例如: ```xml <Spinner android:id="@+id/my_spinner" android:layout_width="match_parent" android:layout_height=...
在实际项目中,这个文件可能会包含一个名为`spinner_item.xml`的布局文件,定义了Spinner下拉列表中每个条目的显示样式。 总之,通过使用SimpleAdapter和Spinner,开发者可以在Android应用中轻松创建功能完备的下拉...
在布局文件中,我们通常会用`<Spinner>`标签来定义Spinner,并设置其ID。在对应的Activity或Fragment中,通过`findViewById()`获取到Spinner对象,然后通过`setAdapter()`方法为其设置Adapter。Adapter是数据和视图...
在XML布局文件中,我们可以通过`<Spinner>`标签来定义Spinner,并通过`android:id`属性为其指定一个唯一标识。 ```xml <Spinner android:id="@+id/my_spinner" android:layout_width="match_parent" android:...
`android.R.layout.simple_spinner_item`用于定义每个条目的样式,而`android.R.layout.simple_spinner_dropdown_item`用于定义下拉列表中项的样式。 #### 使用 BaseAdapter 自定义 Spinner 对于更复杂的数据结构...
3. `getItemId(int position)`: 返回指定位置数据项的唯一ID,通常在数据源中每个项都有一个唯一的ID。 4. `getView(int position, View convertView, ViewGroup parent)`: 这是最重要的方法,用于创建或复用...
在布局文件中,我们可以使用`<Spinner>`标签来创建Spinner,并通过`android:entries`属性指定选项列表的数据来源,通常是引用一个字符串数组资源。 ```xml <Spinner android:id="@+id/my_spinner" android:layout...
- 自定义布局:可以通过创建一个新的布局文件作为每个条目的模板,然后在ArrayAdapter的构造函数中指定该布局。 - 修改默认样式:可以修改`android.R.attr.spinnerDropDownItemStyle`主题属性,改变下拉列表的显示...
- 创建Spinner: 在布局XML文件中添加Spinner元素,通过`android:id`为其分配一个ID,`android:layout_width`和`android:layout_height`设置大小。 - 设置数据源: Spinner的数据通常来自一个适配器(Adapter),如...
首先,在布局XML文件中,我们使用`<Spinner>`标签声明Spinner控件,并为其指定宽度和高度。例如: ```xml android:id="@+id/TextView01" android:layout_width="fill_parent" android:layout_height="wrap_...