2013-09-26 1 views
0

Я использую этот код.Как обновить счетчик в android с помощью Sqlite Database?

nextButton.setOnClickListener(new OnClickListener() { 

      @Override 
      public void onClick(View v) { 

       String name=nameEdit.getText().toString(); 

       String contactnumber=numberEdit.getText().toString(); 

       String quantity = String.valueOf(quantitySpinner.getSelectedItem()); 

       String noofpieces=piecesEdit.getText().toString(); 

       String dateandtime=editDateTime.getText().toString(); 



       String deliveryaddress=deliveryEdit.getText().toString(); 


       long val=adapter.insertDetails(name, contactnumber, quantity, noofpieces, dateandtime,OPTIONS ,deliveryaddress); 


       String sms="Name:"+name+ System.getProperty ("line.separator")+"ContactNumber:"+contactnumber+ System.getProperty ("line.separator")+"Quantity:"+quantity+System.getProperty ("line.separator")+"Number.of.Pcs:"+noofpieces+System.getProperty ("line.separator")+"Date and Time:"+dateandtime+System.getProperty ("line.separator")+"Delivary Address:"+deliveryaddress; 

       int bookingId = adapter.getMaxID(); 

       Bundle passdata = new Bundle(); 
       passdata.putInt(helper_ob.B_ID, bookingId); 
       passdata.putString(helper_ob.QUANTITY, quantity); 
       passdata.putString(helper_ob.SMS, sms); 
       Intent passIntent = new Intent(BookingForm.this, OrderSummary.class); 
       passIntent.putExtras(passdata); 
       startActivity(passIntent);finish(); 

      } 
     }); 

и вставил в таблицу базы данных .while обновления формы бронирования .I может получить все для редактирования, кроме блесны значения .The Spinner устанавливаются по умолчанию.

spinner.xml

<?xml version="1.0" encoding="utf-8"?> 
<resources> 

    <string name="app_name">Android</string> 
    <string name="action_settings">Settings</string> 
    <string name="bottle_prompt">Select your Quantity</string> 

    <string-array name="bottle_arrays"> 
     <item >300ml</item> 
     <item>500ml</item> 
     <item>1-litre</item> 
     <item>2-litre</item> 
     <item>5-litre</item> 
     <item>20-litre</item> 
     <item>50-litre</item> 
     <item>New Bt</item> 
     <item>New Matca</item> 
    </string-array> 

</resources> 

Для, например: Если я выбрать 1-литровый в блеснах и вставки в таблицу базы данных при обновлении всех значений открывается на странице редактирования, кроме блесны устанавливается по умолчанию 300ml. Как я могу обновить счетчик при редактировании страницы?

Edit.java

package com.example.android; 

import android.app.Activity; 
import android.content.Intent; 
import android.database.Cursor; 
import android.os.Bundle; 
import android.view.View; 
import android.view.View.OnClickListener; 
import android.widget.Button; 
import android.widget.EditText; 
import android.widget.RadioButton; 
import android.widget.RadioGroup; 
import android.widget.Spinner; 

public class EditBookingForm extends Activity { 
    EditText nameEdit,contactNumber,editPieces,editDate,editAddress; 
    Spinner spinner; 
    RadioGroup radioGroup; 
    RadioButton radioButton; 
    Cursor cursor; 
    BookingAdapter adapter; 
    BookingOpenHelper openHelper_ob; 
    Button doneButton,cancelButton; 
    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     // TODO Auto-generated method stub 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.edit_online); 
     nameEdit=(EditText) findViewById(R.id.nameEdit); 
     contactNumber=(EditText) findViewById(R.id.contactNumber); 
     editPieces=(EditText) findViewById(R.id.editpieces); 
     editDate=(EditText) findViewById(R.id.editdate); 
     editAddress=(EditText) findViewById(R.id.editdelivary); 
     spinner=(Spinner) findViewById(R.id.spinner); 
     radioGroup=(RadioGroup) findViewById(R.id.radioGroup); 
     doneButton=(Button) findViewById(R.id.updateformbtn); 
     cancelButton=(Button) findViewById(R.id.deleteformbutton);  
     Bundle extras = getIntent().getExtras(); 
     final int bookingId = extras.getInt(openHelper_ob.B_ID); 



     adapter = new BookingAdapter(this); 
     cursor = adapter.queryAll(bookingId); 
     if (cursor.moveToFirst()) { 
      do { 
       nameEdit.setText(cursor.getString(1)); 
       contactNumber.setText(cursor.getString(2)); 
       //spinner.setSelection(q); 
       editPieces.setText(cursor.getString(4)); 
       editDate.setText(cursor.getString(5)); 
       editAddress.setText(cursor.getString(6)); 


      } while (cursor.moveToNext()); 
     } 
     doneButton.setOnClickListener(new OnClickListener() {  
      @Override 
      public void onClick(View arg0) { 
       // TODO Auto-generated method stub 
       String name = nameEdit.getText().toString(); 
       String number = contactNumber.getText().toString(); 
       String quantity = String.valueOf(spinner.getSelectedItem()); 

       String noofpieces=editPieces.getText().toString(); 

       String dateandtime=editDate.getText().toString(); 



       String deliveryaddress=editAddress.getText().toString(); 

       adapter.updateldetail(bookingId,name,number); 
       finish();    
       Bundle passdata = new Bundle(); 
       String sms="Name:"+name+ System.getProperty ("line.separator")+"ContactNumber:"+number+ System.getProperty ("line.separator")+"Quantity:"+quantity+System.getProperty ("line.separator")+"Number.of.Pcs:"+noofpieces+System.getProperty ("line.separator")+"Date and Time:"+dateandtime+System.getProperty ("line.separator")+"Delivary Address:"+deliveryaddress; 
       passdata.putInt(openHelper_ob.B_ID, bookingId);  
       passdata.putString(openHelper_ob.SMS, sms); 
       Intent passIntent = new Intent(EditBookingForm.this, OrderSummary.class); 
       passIntent.putExtras(passdata); 
       startActivity(passIntent);    
      } 
     }); 
} 
} 

ответ

1

способ получить выбор для вертушка является: эталонная

int spinnerValue = spinner.getSelectedItemPosition(); 

Документация: http://developer.android.com/reference/android/widget/AdapterView.html#getSelectedItemPosition()

+0

, как я могу обновить, используя этот – Deepak

+0

Ват, есть! .store число в переменной int .. используйте это, где бы вы этого ни захотели –

+0

Спасибо, работая отлично. – Deepak

0
spinner.setSelection(POSITION); 

это установит выбор в нужное положение, где позиция может быть найдена из элементов массива в строке файла

+0

nameEdit.setText (cursor.getString (1)); \t \t \t \t contactNumber.setText (cursor.getString (2)); \t \t \t \t spinner.setSelection (POSITION); \t \t \t \t editPieces.setText (cursor.getString (4)); \t \t \t \t РедактироватьDate.setText (cursor.getString (5)); \t \t \t \t editAddress.setText (cursor.getString (6)); – Deepak

+0

String [] array = getResources(). GetStringArray (R.array.bottle_arrays); проверьте, чтобы ваша строка говорила 1-литровый в массиве и получила эту позицию. Сохраните это в ПОЗИЦИИ – SKT

0
Spinner spinner; 

// хранение textvalue в количестве

String quantity = String.valueOf(spinner.getSelectedItem()); 

// хранение getSelectedItemPosition в Int переменной

int qualityValue=spinner.getSelectedItemPosition(); 
Смежные вопросы