проверить, если кнопка переключения проверяется в другой активности Android - PullRequest
0 голосов
/ 10 октября 2018

У меня Activity_A, которая содержит кнопку-переключатель и Activity_B, где я хочу проверить, проверены ли эти кнопки и что-то сделать, но я не знаю, как я могу это сделать.Я знаю, как я могу сделать это в упражнении A. Например, на Actictivity_B, когда я нажимаю кнопку search_button, я хочу проверить, проверена ли соя, что-то сделать.

ArrayList<ArrayList<String>> checkedAllergens = new ArrayList<ArrayList<String>>();
    ArrayList<String> fetchedAllergens =new ArrayList<String>();
    // String fetcdedAllergens=new String();
    List<String> fetcdedAllergensList = new ArrayList<String>();
    ArrayList<String> soy2= new ArrayList<String>();

  searchBtn.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
//i understand that the code must be placed in here
//public void onCheckedChanged(CompoundButton compoundButton, boolean b) {
        // if (soy.isChecked()) {
            // soy2.add("Soy");
            // soy2.add("Σόγια");
            // soy2.add("soja");
            // soy2.add("Soybeans");
            // checkedAllergens.add(soy2);
            // System.out.println(soy2);
            // System.out.println(checkedAllergens);
           // if (fetchedAllergens.contains(checkedAllergens))
               // System.out.println("not allowed");
        // }
        // else {
            // textView.setText("Soy Off");
            // soy1 = "no";                             
            });

        }

1 Ответ

0 голосов
/ 10 октября 2018

Лучший способ отправить данные из одного вида деятельности в другой - использовать SharedPreferences.Когда нажимается тумблер, вы можете назначить true общей переменной предпочтения isToggled в вашем Activity-A

Примерно так:

Boolean isToggled = yourToggleSwitch.isChecked();

            if (isToggled) {

                SharedPreferences sharedpreferences = getActivity().getPreferences(Context.MODE_PRIVATE);

                SharedPreferences.Editor editor = sharedpreferences.edit();
                editor.putString(isToggled, "true");
                editor.commit();

            }

Как только вы достигнете Activity-B, просто проверьте свои общие настройки, если значение isToggled равно true, например:

Boolean isToggled= sharedpreferences.getString(isToggled, "");

Если это true, вы можете делать все, что захотите.

Еще один способ отправки данных из одного вида деятельности в другой - использовать Intends и связывать.Но это можно использовать только в том случае, если вы уверены, что ваше приложение перейдет на Activity-B после Activity-A, не выбрав другой путь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...