2017-02-15 2 views
0

Я пытаюсь отправить изображение на сервер. Случается, что кнопка не работает ... Ничего не происходит, когда я нажимаю на нее.кнопка не открывается doInBackground (void ... params)

аннулируются OnCreate

imageToUpload = (ImageView) findViewById(R.id.imageToUpload); 
bUploadImage = (Button) findViewById(R.id.bUploadImage); 
uploadImageName = (EditText) findViewById(R.id.etUploadName); 

imageToUpload.setOnClickListener(this); 

аннулируются OnClick

@Override 
public void onClick(View v) { 
    switch (v.getId()) { 
     case R.id.imageToUpload: 
      Intent galleryIntent = new Intent(Intent.ACTION_PICK, MediaStore.Images.Media.EXTERNAL_CONTENT_URI); 
      startActivityForResult(galleryIntent, RESULT_LOAD_IMAGE); 
      break; 
     case R.id.bUploadImage: //HERE, THE BUTTON THAT I WANT TO WORK 
      Bitmap image = ((BitmapDrawable) imageToUpload.getDrawable()).getBitmap(); 
      new UploadImage(image, uploadImageName.getText().toString()).execute(); 
    } 
} 

    private class UploadImage extends AsyncTask<Void, Void, Void> { 

     Bitmap image; 
     String name; 

     public UploadImage(Bitmap image, String name){ 
      this.image = image; 
      this.name = name; 
     } 

    @Override 
    protected Void doInBackground(Void... params) { 
     ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream(); 
     image.compress(Bitmap.CompressFormat.JPEG, 100, byteArrayOutputStream); 
     String encodedImage = Base64.encodeToString(byteArrayOutputStream.toByteArray(), Base64.DEFAULT); 

     Toast.makeText(getApplicationContext(), "UPLOADING...", Toast.LENGTH_SHORT).show(); 
    ... 

В чем проблема, что doInBackground не вызывается при нажатии на кнопку R.id.bUploadImage?

+2

'bUploadImage.setOnClickListener (это),' –

ответ

1

Вы должны инициализировать кнопку bUploadImage с слушателем

bUploadImage.setOnClickListener(this); 

, потому что в настоящее время только case R.id.imageToUpload становится выполненной

+0

ой, спасибо, друг! –

+0

@RickJoe Я рад, что смог помочь и счастлив кодировать –