2012-06-22 102 views
0

我如何填充這個,我有2個Spinners在我的應用程序中,一個是省和其他是爲城市,當我選擇在省紡紗機Gauteng我想我的第二個微調顯示約翰內斯堡,比勒陀利亞,百夫長和如果我選擇省KZN我想我的第二個微調顯示馬裏博格和德班。如何從mySql數據庫中填充微調框

即時通訊使用mySql數據庫,我有省表和城市表。 這裏是我省表(idprovince,provincename)

1 Gauteng 
2 Free-State 
3 Limpopo 
4 Northen-Cape 
5 North-West 
6 Western-Cape 
7 Eastern-Cape 
8 Kwa-Zulu-Natal 
9 Mpumalanga 

,這裏是我的城市表(idcity,城市名,province_idprovince)

1 Johannesburg 1 
2 pretoria 1 
3 Centurion 1 
4 Bloemfontein 2 
5 Welkom 2 
6 Polokwane 3 
7 Phalaborwa 3 
8 Potgiersrus 3 
9 Tzaneen 3 
10 Kimberley 4 
11 Upington 4 
12 Mafikeng 5 
13 Klerksdorp 5 
14 Mmabatho 5 
15 Potchefstroom 5 
16 Brits 5 
17 Cape-Town 6 
18 Stellenbosch 6 
19 George 6 
20 Saldhana-Bay 6 
21 Bisho 7 
22 Port-Elizabeth 7 
23 East-London 7 
24 Pietermaritzburg 8 
25 Durban 8 
26 Ulundi 8 
27 Richards-Bay 8 
28 Newcastle 8 
29 Nelspruit 9 
30 Witbank 9 
31 Middleburg 9 
32 Ermelo 9 

我將你並欣賞的幫助。

+1

這是一個你要求人們幫助你解決編碼問題的地方。這不是一個你要求爲你完成工作的地方。請看這裏應該問的問題類型:http://stackoverflow.com/faq#questions – darren

+1

我很困惑。你是否意味着你使用'sqlite'或者你使用'mysql'而不是服務器 - 客戶端結構 – Hein

+0

你的問題很不清楚你試過了什麼,你真的想要什麼? –

回答

0

確定加載您的微調,那麼你應該看看一些教程做後得到紡紗 基本是

1步:從數據庫獲取數據並將其設置爲使用適配器的第一個微調器

第2步:在第一個微調器的OnItemSelected事件中,您還必須設置第二個適配器(根據選定項目從數據庫中獲取數據並將其設置爲第二個使用適配器的旋轉器)

0

這裏是一個例子。在這裏我得到了使用SAX解析服務器,從細節。在這裏District_districtname和district_districtid是的ArrayList我在哪裏從服務器

Spinner sp1, sp2; 
ArrayList<String> loc = new ArrayList<String>(); 
static ArrayList<String> mov = new ArrayList<String>(); 

ArrayAdapter<String> ad = new ArrayAdapter<String>(this, 
      android.R.layout.simple_spinner_item, district_districtname); 
    // apply the Adapter: 
    sp1.setAdapter(ad); 
    sp1.clearFocus(); 

    sp1.setOnItemSelectedListener(new OnItemSelectedListener() { 

     public void onItemSelected(AdapterView<?> arg0, View arg1, 
       int arg2, long arg3) { 

      int pos = sp1.getSelectedItemPosition(); 
      selecteddistrict = district_districtname.get(pos); 

      loc.clear(); 
      for (int i = 0; i < district_districtname.size(); i++) { 

       if (district_districtname.get(i).equals(selecteddistrict)) { 

        districtid = district_districtid.get(i); 
        for (int j = 0; j < locality_localityname.size(); j++) { 

         if (locality_districtid.get(j).equals(districtid)) { 

          loc.add(locality_localityname.get(j)); 

         } 
        } 
       } 
      } 


      sp2 = (Spinner) findViewById(R.id.Spinner01); 

    ArrayAdapter<String> ad2 = new ArrayAdapter<String>(this, 
      android.R.layout.simple_spinner_item, loc); 
    // apply the Adapter: 
    sp2.setAdapter(ad2); 

    sp2.setOnItemSelectedListener(new OnItemSelectedListener() { 

     public void onItemSelected(AdapterView<?> arg0, View arg1, 
       int arg2, long arg3) { 

}存儲細節