2016-05-12 55 views
0

這是我的數據庫的保存按鈕按鈕代碼。如何在sqlite數據庫中保存每個微調器值?

btnsave.setOnClickListener(new View.OnClickListener() 
{ 
    @Override 
    public void onClick(View v) { 
     pd.setFname(et1.getText().toString()); 

     pd.setLname(et2.getText().toString()); 

     pd.setPhone(et3.getText().toString()); 

     pd.setRelation(spinner1.getSelectedItem().toString()); 

     int spinner_pos=spinner1.getSelectedItemPosition(); 
     String[]relation=getResources().getStringArray(R.array.addrelation); 

     String mg = he.save(pd); 

     m.setText(mg); 
    } 
}); 

它只保存每個記錄中的第一個微調值。

回答

0

快速的方法是使用內部setOnclickListner循環(可以有一些更好的做到這一點):

btnsave.setOnClickListener(new View.OnClickListener() 
     { 
      @Override 
      public void onClick(View v) { 

       int nSpinnerItemsCount = spinner1.getCount(); 

       for(int nCounter = 0; nCounter < nSpinnerItemsCount; nCounter ++) 
       { 
       pd.setFname(et1.getText().toString()); 

       pd.setLname(et2.getText().toString()); 

       pd.setPhone(et3.getText().toString()); 

       pd.setRelation(spinner1.getItemAtPosition(nCounter).toString()); 
       String mg = he.save(pd); 

       m.setText(mg); 

       } 


     }); 

spinner1.getItemAtPosition(的nCounter)的ToString()是關鍵。在您的代碼上使用 int spinner_pos = spinner1.getSelectedItemPosition();

默認情況下,它總是返回微調控件內第一個元素的索引(如果選擇了其他元素)。

因此,通過使用spinner1.getCount,一個循環和getItemAtPosition,您擁有微調器中的所有元素,並執行您想要的操作。

希望有所幫助。

+0

它的工作在第一,但現在它是僅服用的最後一個值,我這樣做:對(INT的nCounter = 0;的nCounter

相關問題