Как я могу изменить цвет фона основного действия, используя спиннер, нажимая кнопку во втором действии? - PullRequest
0 голосов
/ 23 ноября 2018

Я хочу изменить цвет фона основного действия, используя вращатель во втором действии.Я уже создал одну кнопку, и она переходит ко второму упражнению, и в этом втором упражнении я создал вращатель, состоящий из того, какой цвет должен быть в основном упражнении.После выбора цвета созданная мной кнопка изменит цвет фона и вернется к первому действию.

1 Ответ

0 голосов
/ 24 ноября 2018

Насколько я понимаю, вам нужно поведение ActivityForResult.

  • Вы используете startActivityForResult для передачи Намерения от первого действия ко второму вместе с кодом запроса.
  • Вы используете Намерение и setResult для отправки данных изваше второе занятие обратно к вашему первому.
  • Вы переопределяете onActivityResult в своей первой операции, чтобы получать и использовать ваши данные.

Пример кода:

public class FirstActivity extends Activity {
    private static final int PICK_COLOR_REQUEST = 1001;

    ...

    private void pickColor() {
        Intent pickColorIntent = new Intent(this, SecondActivity.class);
        startActivityForResult(pickColorIntent, PICK_COLOR_REQUEST);
    }

    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        if (requestCode == PICK_COLOR_REQUEST && resultCode == Activity.RESULT_OK) {
            int color = data.getIntExtra("color");
            /* use the color */
        }
    }
}

public class SecondActivity extends Activity {
    ...

    private void onColorPicked(int color) {
        Intent dataIntent = new Intent();
        dataIntent.putExtra("color", color);

        setResult(Activity.RESULT_OK,returnIntent);
        finish();
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...