2017-03-17 88 views
0

我在1個活動一直在做編碼在Android Studio中有2個紡紗用2個紡紗正常工作。當我選擇一個項目就不會調用監聽即使紡紗有不同的變量。微調OnItemSelectedListener沒有1個活動

下面是從數據庫填充微調,也爲選擇值(loadSYData功能)

public void loadQtrData() { 
    Cursor cursor = myDb.getQtr(); 
    ArrayList<String> qtrLabel = new ArrayList<>(); 
    ArrayAdapter<String> qtrAdapter = new ArrayAdapter<String>(this, R.layout.spinner_item, qtrLabel); 
    qtrAdapter.setDropDownViewResource(R.layout.spinner_item); 
    spinnerQtrParent.setAdapter(qtrAdapter); 
    while(cursor.moveToNext()){ 
     String label = cursor.getString(cursor.getColumnIndex("SC_Quarter")); 
     qtrLabel.add(label); 
    } 
} 

public void loadSYData(){ 
    Cursor cursor = myDb.getSY(); 
    ArrayList<String> syLabel = new ArrayList<>(); 
    ArrayAdapter<String> syAdapter = new ArrayAdapter<String>(this, R.layout.spinner_item, syLabel); 
    syAdapter.setDropDownViewResource(R.layout.spinner_item); 
    spinnerSYParent.setAdapter(syAdapter); 
    while(cursor.moveToNext()){ 
     String label = cursor.getString(cursor.getColumnIndex("SY")); 
     syLabel.add(label); 
    } 
    spinnerSYParent.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { 
     @Override 
     public void onItemSelected(AdapterView<?> parent, View view, int position, long id) { 
      sy = "Success"; 
     } 

     @Override 
     public void onNothingSelected(AdapterView<?> parent) { 

     } 
    }); 
} 

我也把舉杯那會說的成功只是爲了檢查是否監聽相關的代碼被調用。但敬酒程序不執行。

回答

0

可能是你的光標沒有數據或者沒有移動到第一位置 檢查這個代碼,看看天氣的微調事件被設置或不。

public void loadSYData(){ 
     Cursor cursor = myDb.getSY(); 
     ArrayList<String> syLabel = new ArrayList<>(); 
     ArrayAdapter<String> syAdapter = new ArrayAdapter<String>(this, R.layout.spinner_item, syLabel); 
     syAdapter.setDropDownViewResource(R.layout.spinner_item); 
     spinnerSYParent.setAdapter(syAdapter); 
     // add this line to move cursor to 1st position. 
     cursor.moveToFirst(); 
     while(cursor.moveToNext()){ 
      String label = cursor.getString(cursor.getColumnIndex("SY")); 
      syLabel.add(label); 
     } 
     // Put debug point or print some thing here to confirm 
     spinnerSYParent.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { 
      @Override 
      public void onItemSelected(AdapterView<?> parent, View view, int position, long id) { 
       sy = "Success"; 
      } 

      @Override 
      public void onNothingSelected(AdapterView<?> parent) { 

      } 
     }); 
    } 
+0

我試過並添加了「Toast.makeText(this,」After population「,Toast.LENGTH_SHORT);」吐司沒有執行。 – schwall

+0

已添加我的代碼?那麼一定有一些錯誤。檢查日誌 – androidnoobdev

+0

W/InputEventReceiver:試圖完成的輸入事件,但輸入的事件接收器已經被設置。 – schwall