0

I have two buttons in my layout namely,

  • buttonAddImage
  • buttonLoadImage

Now my need is, I want to enable "buttonLoadImage" If user onclick "buttonAddImage" else "buttonLoadImage" always disabled.How to achieve that help me.

        final Button buttonAddImage = (Button)   findViewById(R.id.buttonAddPicture);
        final Button buttonLoadImage = (Button) findViewById(R.id.buttonLoadPicture);
        buttonAddImage.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View view) {
            buttonLoadImage.setEnabled(true);
            Intent galleryIntent = new Intent(Intent.ACTION_PICK,
                    android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
            // Start the Intent
            startActivityForResult(galleryIntent, RESULT_LOAD_IMAGE);

        }

    });
simon peter
  • 39
  • 1
  • 2
  • 11
  • What is the problem with above code. – Mohammad Tauqir Oct 06 '15 at 06:12
  • 1
    Possible duplicate of [How to disable an Android button?](http://stackoverflow.com/questions/4384890/how-to-disable-an-android-button) – Oleh Dokuka Oct 06 '15 at 06:13
  • The above code does display the "buttonLoadImage" after onclick "buttonAddImage" that working fine..but i want to disable "buttonLoadImage" if user doesnot click "buttonAddImage". – simon peter Oct 06 '15 at 06:20

4 Answers4

2

Add the code for disabling the button outside onClick method

        final Button buttonAddImage = (Button) findViewById(R.id.buttonAddPicture);
        final Button buttonLoadImage = (Button) findViewById(R.id.buttonLoadPicture);
        buttonLoadImage.setEnabled(false);
        buttonAddImage.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View view) {
            buttonLoadImage.setEnabled(true);
            Intent galleryIntent = new Intent(Intent.ACTION_PICK,
                    android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
            // Start the Intent
            startActivityForResult(galleryIntent, RESULT_LOAD_IMAGE);

        }

    });
Jas
  • 3,207
  • 2
  • 15
  • 45
0

try setting the listener of buttonLoadImage in onclick of buttonAddImage

 @Override
    public void onClick(View view) {
        buttonLoadImage.setOnClickListener(this);
        Intent galleryIntent = new Intent(Intent.ACTION_PICK,
                android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
        // Start the Intent
        startActivityForResult(galleryIntent, RESULT_LOAD_IMAGE);

    }
Amit Kumar
  • 208
  • 1
  • 9
0

use this

final Button buttonAddImage = (Button) findViewById(R.id.buttonAddPicture);
final Button buttonLoadImage = (Button)findViewById(R.id.buttonLoadPicture);
buttonLoadImage.setEnabled(false);
buttonAddImage.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View view) {
    buttonLoadImage.setEnabled(true);
}
Pirisok
  • 401
  • 3
  • 9
0

Define varible in your class like this private boolen ISCLICKED=false;D then

buttonAddImage.setOnClickListener(new View.OnClickListener() {

    @Override
    public void onClick(View view) {

        Intent galleryIntent = new Intent(Intent.ACTION_PICK,
                android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
        // Start the Intent
        startActivityForResult(galleryIntent, RESULT_LOAD_IMAGE);
       ISClLICKED=true

    }

});

now check button is clicked or not

    if(ISCLICKED==true){

buttonLoadImage.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View view) {


            //do somththing

        }

    });
}else
{
Toast.maketext(contex,"Add image 1st",Toast.LENGHT_SHORT).show;
}
Amar Yadav
  • 170
  • 11