求助呀,android怎么实现级联查询,最好有个实例,妹纸谢过!!!

解决方案 »

  1.   

    网上找的代码,看了一下,应该可以.参考一下吧.主要看onItemSelected()方法部分,这部分代码是当前一个Spinner切换的时候刷新第二个Spinner,希望对你有帮助
    import android.app.Activity;
      import android.content.Context;
      import android.os.Bundle;
      import android.view.View;
      import android.widget.AdapterView;
      import android.widget.ArrayAdapter; import android.widget.Spinner;
      import android.widget.AdapterView.OnItemSelectedListener;  public class cityset extends Activity{
          private String[] province = new String[] {"直辖市", "特别行政区","黑龙江"};
          private String[] city = new String[]{"北京","上海","天津","重庆"};
          private String[][] pandc = new String[][]{{"北京","上海","天津","重庆"},{"香港","澳  门"},{"哈尔滨","齐齐哈尔","牡丹江","大庆","伊春","双鸭山","鹤岗","鸡西","佳木斯","七台河","黑河","绥化","大兴安岭"}};
          private Spinner sp;
          private Spinner sp2;
          private Context context;      ArrayAdapter<String> adapter ;      ArrayAdapter<String> adapter2; 
        
           public void onCreate(Bundle savedInstanceState) {
               super.onCreate(savedInstanceState);
               setContentView(R.layout.cityset);  context = this;
             
                  adapter = new ArrayAdapter<String>(this,android.R.layout.simple_spinner_item, province); 
                  adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); 
                  sp = (Spinner) findViewById(R.id.province); 
                  sp.setAdapter(adapter);
                  sp.setOnItemSelectedListener(selectListener);
                
                  adapter2 = new ArrayAdapter<String>(this,android.R.layout.simple_spinner_item, city); 
                adapter2.setDropDownViewResource  (android.R.layout.simple_spinner_dropdown_item); 
                  sp2 = (Spinner) findViewById(R.id.city);
                  sp2.setAdapter(adapter2);
                
          }
         
           private OnItemSelectedListener selectListener = new OnItemSelectedListener(){
               public void onItemSelected(AdapterView parent, View v, int position,long id){
                   int pos = sp.getSelectedItemPosition();
                   adapter2 = new ArrayAdapter<String>  (context,android.R.layout.simple_spinner_item, pandc[pos]);
                   sp2.setAdapter(adapter2);
               }
           
               public void onNothingSelected(AdapterView arg0){         }     };}
    XML文件:
    <?xml version="1.0" encoding="utf-8"?>
      <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
          android:layout_width="fill_parent"
          android:layout_height="fill_parent"
          android:background="#FFFFFF"
          >
          <Spinner android:id="@+id/province" 
              android:layout_width="fill_parent" 
                android:layout_height="45px"
                android:layout_marginLeft="75px"
                android:layout_marginRight="20px"
              android:layout_marginTop="7px" 
               android:drawSelectorOnTop="true"
               android:layout_alignParentRight="true" 
          />
             <Spinner android:id="@+id/city" 
              android:layout_width="fill_parent" 
                android:layout_height="45px"
                android:layout_marginLeft="75px"
                android:layout_marginRight="20px"
              android:layout_marginTop="3px" 
               android:drawSelectorOnTop="true"
               android:layout_alignParentRight="true" 
               android:layout_below="@id/province" 
              />
          
      </RelativeLayout>