(1) Two methods to extract the data source in the spinner: Through the list collection, or through the XML file configuration
(2) Layout code such as the following:
<relativelayout xmlns:android= "http://schemas.android.com/apk/res/android" xmlns:tools= "http// Schemas.android.com/tools "android:layout_width=" match_parent "android:layout_height=" Match_parent "Android:paddi ngbottom= "@dimen/activity_vertical_margin" android:paddingleft= "@dimen/activity_horizontal_margin" Android: paddingright= "@dimen/activity_horizontal_margin" android:paddingtop= "@dimen/activity_vertical_margin" tools: Context= ". Mainactivity "> <textview android:id=" @+id/textview1 "android:layout_width=" Wrap_content "an droid:layout_height= "Wrap_content" android:layout_alignparentleft= "true" android:layout_alignparenttop= "true "Android:layout_margintop=" 46DP "android:text=" City "android:textsize=" 22SP "/> <spinner Android:id= "@+id/spinner1" android:layout_width= "200sp" android:layout_height= "Wrap_content" and Roid:layout_alignparenttop= "true" Android:layout_margintop= "44DP" android:layout_torightof= "@+id/textview1"/> <textview android:id= "@+id/textVi Ew2 "android:layout_width=" wrap_content "android:layout_height=" Wrap_content "Android:layout_alignrig ht= "@+id/textview1" android:layout_centervertical= "true" android:text= "belongs to Planet"/> <spinner and Roid:id= "@+id/spinner2" android:layout_width= "wrap_content" android:layout_height= "Wrap_content" Android oid:layout_alignleft= "@+id/spinner1" android:layout_aligntop= "@+id/textview2" android:layout_marginleft= "21d P "/></relativelayout>
(2)
Package Com.example.spinners;import Java.util.arraylist;import Java.util.list;import android.app.activity;import Android.os.bundle;import Android.view.menu;import Android.view.view;import Android.widget.adapterview;import Android.widget.adapterview.onitemselectedlistener;import Android.widget.arrayadapter;import Android.widget.spinner;import android.widget.toast;/** * Events when selecting by inheriting the Onitemselectedlistener interface * @author Xuliugen * */ public class Mainactivity extends Activity implements Onitemselectedlistener {private Spinner spinner1;private Spinner sp inner2;//Private Spinneradapter spinneradapter;private arrayadapter<string> adapter; @Overrideprotected void OnCreate (Bundle savedinstancestate) {super.oncreate (savedinstancestate); Setcontentview (R.layout.activity_main); Spinner1 = (Spinner) This.findviewbyid (r.id.spinner1); spinner2 = (Spinner) This.findviewbyid (R.ID.SPINNER2);// The first manual input listadapter = new Arrayadapter<string> (mainactivity.this,android. R.layout.simple_spinner_item, GEtdatasource ()); Spinner1.setadapter (adapter);//Register Listener Spinner1.setonitemselectedlistener (this);// Another: A data source configured by loading an XML file Arrayadapter adapter2 = Arrayadapter.createfromresource (This,r.array.planets_array, Android. R.layout.simple_spinner_item); Adapter2.setdropdownviewresource (Android. R.layout.simple_spinner_dropdown_item); Spinner2.setadapter (adapter2);} /* * Through the first method: Manually entered list */public list<string> getdatasource () {list<string> list = new arraylist<string > (), List.add ("Beijing"), List.add ("Beida"), List.add ("Shahai"), List.add ("shangjing"), List.add ("Shanglian"); List.add ("Chengdu"); return list;} @Overridepublic boolean Oncreateoptionsmenu (Menu menu) {getmenuinflater (). Inflate (R.menu.main, menu); return true;} @Overridepublic void onitemselected (adapterview<?> Parent, view view, int Position,long id) {String itemstring = spinner1.getitematposition (position). ToString (); Toast.maketext (This, "You have selected" + itemstring, 1). Show (); @Overridepublic void onnothingselected (adapterview<?
> Parent) {}}
(4) The configuration in the resource file is as follows:
<?xml version= "1.0" encoding= "Utf-8"?><resources> <string name= "App_name" >spinners</ string> <string name= "action_settings" >Settings</string> <string name= "Hello_world" >hello world!</string> <string-array name= "Planets_array" > <item>mercury</item > <item>Venus</item> <item>Earth</item> <item>Mars</item> <item>Jupiter</item> <item>Saturn</item> <item>Uranus</item> <item>Neptune</item> </string-array></resources>
(5) The results of the implementation are as follows:
Android Learning note spinner drop-down list use case