Spinner下拉列表裝填數據的兩種方法

Android中,給Spinner組件裝填數據比較常見的有以下兩種方法:

一、編程載入列表數據

效果圖:

 

首先,在佈局文件main.xml中添加spinner組件,代碼如下: 

  1. <?xml version="1.0" encoding="utf-8"?> 
  2. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
  3.     android:orientation="vertical" 
  4.     android:layout_width="fill_parent" 
  5.     android:layout_height="fill_parent" 
  6.     > 
  7. <TextView    
  8.     android:layout_width="fill_parent"   
  9.     android:layout_height="wrap_content"   
  10.     android:text="Spinner_1" 
  11.     /> 
  12. <Spinner 
  13.     android:id="@+id/spinner_1" 
  14.     android:layout_width="fill_parent" 
  15.     android:layout_height="wrap_content" 
  16.     /> 
  17. </LinearLayout> 

然後,在MainActivity.java中,自定義方法add_list()進行Spinner的數據裝載,代碼如下:

  1. public class MainActivity extends Activity {  
  2.     private static final String[] mCountries = { "中國""美國""日本",  
  3.             "俄羅斯""加拿大" };  
  4.     Spinner sp = null;  
  5.  
  6.     /** Called when the activity is first created. */ 
  7.     @Override 
  8.     public void onCreate(Bundle savedInstanceState) {  
  9.         super.onCreate(savedInstanceState);  
  10.         setContentView(R.layout.main);  
  11.         add_list();  
  12.     }  
  13.  
  14.     private void add_list() {  
  15.         sp = (Spinner) findViewById(R.id.spinner_1);  
  16.         ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,  
  17.                 android.R.layout.simple_spinner_item, mCountries);  
  18.         adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);  
  19.         sp.setAdapter(adapter);  
  20.     }  

二、在XML中預定義列表數據

 首先,在strings.xml中定義列表數據,代碼如下:

  1. <?xml version="1.0" encoding="utf-8"?> 
  2. <resources> 
  3.     <string name="hello">Hello World, MainActivity!</string> 
  4.     <string name="app_name">SpinnerTest</string> 
  5.       
  6.     <string-array name="countries"> 
  7.         <item>中國</item> 
  8.         <item>美國</item> 
  9.         <item>日本</item> 
  10.         <item>俄羅斯</item> 
  11.         <item>加拿大</item> 
  12.     </string-array> 
  13. </resources> 

其次,在佈局文件main.xml中添加spinner組件,代碼如下:

  1. <?xml version="1.0" encoding="utf-8"?> 
  2. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
  3.     android:orientation="vertical" 
  4.     android:layout_width="fill_parent" 
  5.     android:layout_height="fill_parent" 
  6.     > 
  7. <TextView    
  8.     android:layout_width="fill_parent"   
  9.     android:layout_height="wrap_content"   
  10.     android:text="Spinner_1" 
  11.     /> 
  12. <Spinner 
  13.     android:id="@+id/spinner_1" 
  14.     android:layout_width="fill_parent" 
  15.     android:layout_height="wrap_content" 
  16.     /> 
  17. </LinearLayout> 

最後,在MainActivity.java中,進行Spinner的數據裝載,代碼如下:

  1. public class MainActivity extends Activity {  
  2.     Spinner sp = null;  
  3.  
  4.     /** Called when the activity is first created. */ 
  5.     @Override 
  6.     public void onCreate(Bundle savedInstanceState) {  
  7.         super.onCreate(savedInstanceState);  
  8.         setContentView(R.layout.main);  
  9.         sp = (Spinner) findViewById(R.id.spinner_1);  
  10.         ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(  
  11.                 this, R.array.countries,  
  12.                 android.R.layout.simple_spinner_dropdown_item);  
  13.         sp.setAdapter(adapter);  
  14.     }  

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章