2014-10-01 34 views
0

我試圖讓try塊內按鈕的功能,但它顯示了我的錯誤,下面是我的代碼,我想使用按鈕的功能裏面onAvtivityResult我們能否按鈕功能try塊內

protected void onActivityResult(int requestCode, int resultCode, Intent data) { 
     super.onActivityResult(requestCode, resultCode, data); 
     if (resultCode != Activity.RESULT_OK) {return;} 

     if (requestCode == REQUEST_IMAGE) { 
      Uri uri = data.getData(); 
     try 
      { 
      InputStream is = this.getContentResolver().openInputStream(uri); 
      final Bitmap bmInImg = BitmapFactory.decodeStream(is); 
      bmInImg.getPixels(mPhotoIntArray, 0, bmInImg.getWidth(), 0, 0, bmInImg.getWidth(), bmInImg.getHeight()); 
      bmInImg2.getPixels(vPhotoIntArray, 0, bmInImg2.getWidth(), 0, 0, bmInImg2.getWidth(), bmInImg2.getHeight()); 
      mCannyOutArray = new int[bmInImg2.getWidth() * bmInImg2.getHeight()]; 
      final Bitmap bmOutImg = Bitmap.createBitmap(bmInImg2.getWidth(), bmInImg2.getHeight(), Config.ARGB_8888); 
      bmOutImg.setPixels(mCannyOutArray, 0, bmInImg2.getWidth(), 0, 0, bmInImg2.getWidth(), bmInImg2.getHeight()); 

      Button button= (Button) findViewById(R.id.NextButton); 
      button.setOnClickListener(new OnClickListener() { 

      @Override 
      public void onClick(View v) { 
        negative(bmInImg.getHeight(),bmInImg.getWidth(), mPhotoIntArray, mCannyOutArray); 
        bmOutImg.setPixels(mCannyOutArray, 0, bmInImg.getWidth(), 0, 0, bmInImg.getWidth(), bmInImg.getHeight()); 
        imageview_2.setImageBitmap(bmOutImg); 
        } 
       } 

      } 
catch (IOException e) { 
       e.printStackTrace(); 
      } 
當我把鼠標放在 }按鈕功能的

錯誤顯示:

button.setOnClickListener(new OnClickListener() { 

@Override 
+1

您未關閉OnClickListener支架或您的嘗試支架 – gtgaxiola 2014-10-01 20:16:31

+0

此代碼在哪裏?如果它在一個方法中,那麼你有一個無效的嵌套方法。如果它不在方法內部,那麼它需要是因爲你不能在塊外執行代碼。我沒有看到這種代碼有效的情況。也沒有'catch'。 – 2014-10-01 20:17:37

+0

@BoristheSpider我該如何處理這種方法?我更新我的代碼 – AHF 2014-10-01 20:20:47

回答

0

您沒有正確關閉您的anonymous inner class

button.setOnClickListener(new OnClickListener() { 
    @Override 
    public void onClick(View v) { 
    negative(bmInImg.getHeight(),bmInImg.getWidth(), mPhotoIntArray, mCannyOutArray); 
    bmOutImg.setPixels(mCannyOutArray, 0, bmInImg.getWidth(), 0, 0, 
     bmInImg.getWidth(), bmInImg.getHeight()); 
    imageview_2.setImageBitmap(bmOutImg); 
    } 
}); // <-- close the OnClickListener