Java 选中Android复选框不工作

Java 选中Android复选框不工作,java,android,android-checkbox,Java,Android,Android Checkbox,因此,我有这个活动,我有两个复选框,当用户单击其中一个复选框时,它将被选中并toast一个文本11111和2222222。当用户加入活动时,他们将得到toast Welcome。现在,欢迎祝酒词起作用了,但是if.does似乎起作用了。有什么问题吗 这是我的密码 package com.myapp.pack; import com.myapp.pack.R; import com.pushbots.push.Pushbots; import android.R.string; import

因此,我有这个活动,我有两个复选框,当用户单击其中一个复选框时,它将被选中并toast一个文本11111和2222222。当用户加入活动时,他们将得到toast Welcome。现在,欢迎祝酒词起作用了,但是if.does似乎起作用了。有什么问题吗

这是我的密码

package com.myapp.pack;

import com.myapp.pack.R;
import com.pushbots.push.Pushbots;

import android.R.string;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.content.SharedPreferences;

import android.os.Bundle;

import android.view.View;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemSelectedListener;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.Spinner;
import android.widget.Toast;

public class settup extends Activity {
     private String SENDER_ID = "xxx";
     private String PUSHBOT_ID = "xxx";
     public static final String PREFS_NAME = "BuyMeCheckBoxes";




    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.notifsettings);
        Pushbots.init(this, SENDER_ID , PUSHBOT_ID);
        Pushbots.getInstance().setMsgReceiver(GoToApp.class);
        Pushbots.getInstance().setRegStatus(true);
        Toast.makeText(settup.this, 
                "A-ti accesat setarile app", Toast.LENGTH_LONG).show();

          CheckBox auto = (CheckBox) findViewById(R.id.checkBox1);
          CheckBox imobiliare = (CheckBox) findViewById(R.id.checkBox2);


        if (auto.isChecked()) {
            auto.setChecked(false);
            Toast.makeText(settup.this, 
                    "1111111", Toast.LENGTH_LONG).show(); 
        }

        if (imobiliare.isChecked()) {
            auto.setChecked(false);
            Toast.makeText(settup.this, 
                    "2222222", Toast.LENGTH_LONG).show(); 
        }






      // Array of choices
    //      String colors[] = {"Toata Tara","Oradea","Timisoara","Bucuresti","Cluj-Napoca","Constanta","Iasi","Suceava","Targu Mures"};

        // Selection of the spinner


        // Application of the Array to the Spinner
    //      ArrayAdapter<String> spinnerArrayAdapter = new ArrayAdapter<String>(this,   android.R.layout.simple_spinner_item, colors);
    //      spinnerArrayAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); // The drop down view
    //      spinner.setAdapter(spinnerArrayAdapter);




    }


    protected void onResume() { 
        super.onResume(); 
        final CheckBox auto = (CheckBox) findViewById(R.id.checkBox1);
         final CheckBox imobiliare = (CheckBox) findViewById(R.id.checkBox2);



          SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);

         boolean c1 = settings.getBoolean("auto", false);
        boolean c2 = settings.getBoolean("imobiliare", false);

        auto.setChecked(c1);
        imobiliare.setChecked(c2);

    } 


    @Override
    protected void onStop(){
       super.onStop();
       final CheckBox auto = (CheckBox) findViewById(R.id.checkBox1);
       final CheckBox imobiliare = (CheckBox) findViewById(R.id.checkBox2);

      // We need an Editor object to make preference changes.
      // All objects are from android.context.Context
      SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);
      SharedPreferences.Editor editor = settings.edit();

      boolean checkBoxValue1 = auto.isChecked();
      boolean checkBoxValue2 = imobiliare.isChecked();  

      editor.putBoolean("auto", checkBoxValue1);
      editor.putBoolean("imobiliare", checkBoxValue2);
      editor.commit();;
    }


}

}

您可以实现OnClickListener,因此对于您的情况,它应该是这样的

--------------更新-------------

//ensure activity implements on click listener
public class settup extends Activity implements View.OnClickListener {



//set listener - put in onCreate method
auto.setOnClickListner(this);



//set up logic - also goes in onCreate method
auto.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View arg0) {
            final boolean isChecked = image.isChecked();
            switch (arg0.getId()) {
                case R.id.checkBox1:
                    if (isChecked) {
                        Toast.makeText(getApplicationContext(),
                                "1111111", Toast.LENGTH_LONG).show();
                    }
                    break;
            }
        }

    });

快乐编码!:D

可用更新我的答案您需要将复选框声明为类字段,在类内部,但在所有方法外部。然后,在onCreateView中,将它们设置为等于findViewByID内容,并在onCreateView方法中将它们设置为setOnClickListeners。我更新了我的答案给你一个更好的想法。
//ensure activity implements on click listener
public class settup extends Activity implements View.OnClickListener {



//set listener - put in onCreate method
auto.setOnClickListner(this);



//set up logic - also goes in onCreate method
auto.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View arg0) {
            final boolean isChecked = image.isChecked();
            switch (arg0.getId()) {
                case R.id.checkBox1:
                    if (isChecked) {
                        Toast.makeText(getApplicationContext(),
                                "1111111", Toast.LENGTH_LONG).show();
                    }
                    break;
            }
        }

    });