检查是否在另一个活动中检查了切换按钮

时间:2018-10-10 15:02:59

标签: android android-studio

我有activity_A,其中包含切换按钮和activity_B,我要在其中检查那些按钮是否已选中并执行某些操作,但是我不知道该怎么做。我知道我如何在活动A中做到这一点。 例如,在Actiivity_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 :(得分:0)

从一个活动向另一个活动发送数据的最佳方法是使用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和bundle。但这仅在您非常确定您的应用仅在Activity-B之后进入Activity-A而没有采取任何其他路径的情况下才能使用。