Передача значений счетчика - PullRequest
2 голосов
/ 08 декабря 2011

Я пытаюсь закодировать способ передачи значений из двух счетчиков в другое действие.

Я нашел примеры использования метода putExtra в Интернете, но у меня возникли проблемы с его реализацией (я думаю, мне просто непонятно, как именно он работает).

Код, который я имею (без каких-либо значений в методе putExtra, потому что это бит, на котором я застрял):

public void addListenerOnButton() {

        transportSpinner = (Spinner) findViewById(R.id.transportSpinner);
        locationSpinner = (Spinner) findViewById(R.id.locationSpinner);

        buttonSubmit = (Button) findViewById(R.id.buttonSubmit);

        buttonSubmit.setOnClickListener(new OnClickListener() {

          @Override
          public void onClick(View v) {

              Intent i = new Intent(GetDirections.this.getApplicationContext(), DirectionDisplay.class);
              i.putExtra(); 
              GetDirections.this.startActivity(i);

          }

        });
}

Спасибо.

Ответы [ 2 ]

2 голосов
/ 08 декабря 2011

Опираясь на ответ gwa:

На этом экране вы должны выполнить намерение (при условии, что ваши счетчики имеют правильные значения курса):

Intent i = new Intent(GetDirections.this.getApplicationContext(), DirectionDisplay.class);
i.putExtra("transportSpinnerValue", transportSpinner.getSelectedItem().toString());
i.putExtra("locationSpinnerValue", locationSpinner.getSelectedItem().toString());
GetDirections.this.startActivity(i);

Затем на следующем экранеВы должны получить эти значения.Поскольку вы передали дополнительную информацию в Intent, вы должны получить ее из намерения в следующем классе.

Так же:

//DirectionsDisplay class
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState);

    Bundle extras = getIntent().getExtras();
    String transportItemChosen = extras.getString("transportSpinnerValue");
    String locationItemChosen = extras.getString("locationSpinnerValue");

} 
1 голос
/ 08 декабря 2011

Предполагая, что ваши счетчики правильно заполнены, вы можете сделать:

...
i.putExtra("transportSpinnerSelected", transportSpinner.getSelectedItem());
i.putExtra("locationSpinnerSelected", locationSpinner.getSelectedItem());
...
...