2016-03-20 4 views
2

Я беру изображение с камеры, но проблема в том, что она идет в режиме Landscape, даже когда я снимаю изображение в портретном режиме.При попытке повернуть изображение: Невозможно разрешить метод mtx.postRotate (int)

Чтобы решить эту проблему, я попытался повернуть изображение, но я получаю эту ошибку (см. Ниже).

protected void onActivityResult(int requestCode, int resultCode, Intent data) { 
    if (requestCode == 1) { 
     int screenWidth = getResources().getDisplayMetrics().widthPixels; 
     int screenHeight = getResources().getDisplayMetrics().heightPixels; 
     File imgFile = new File(pictureImagePath); 
     if(imgFile.exists()){ 
      Bitmap bm = BitmapFactory.decodeFile(imgFile.getAbsolutePath()); 

      //Rotate image 
      if (getResources().getConfiguration().orientation == Configuration.ORIENTATION_PORTRAIT) { 
       // Notice that width and height are reversed 
       Bitmap scaled = ScalingUtilities.createScaledBitmap(bm, screenHeight, screenWidth, ScalingUtilities.ScalingLogic.FIT); 
       int w = scaled.getWidth(); 
       int h = scaled.getHeight(); 
       // Setting post rotate to 90 
       Matrix mtx = new Matrix(); 
       mtx.postRotate(90); //Cannot resolve method 'postRotate(int)' 
       // Rotating Bitmap 
       bm = Bitmap.createBitmap(scaled, 0, 0, w, h, mtx, true); 
      }else{// LANDSCAPE MODE 
       //No need to reverse width and height 
       Bitmap scaled = ScalingUtilities.createScaledBitmap(bm, screenHeight, screenWidth, ScalingUtilities.ScalingLogic.FIT); 
       bm=scaled; 
      } 

      ImageView myImage = (ImageView) findViewById(R.id.imageView); 
      myImage.setImageBitmap(bm); 

     } 
    } 

Проблема: mtx.postRotate(90); показывает: не удается разрешить метод 'postRotate (INT)'

Любая помощь?

Не стесняйтесь предлагать изменения. Любая помощь приветствуется.

+0

см. Типы параметров Bitmap.createBitmap – pskink

+0

@pskink Это тоже ошибка, но неспособность понять это. Можете ли вы уточнить? –

+0

проверить битмап.createBitmap' 6-й параметр ('Matrix m') и сравнить его с вашим' mtx' – pskink

ответ

3

скорее всего вы пользуетесь android.opengl.Matrix, если Bitmap.createBitmapandroid.graphics.Matrix.

вот почему у вас есть сбор ошибок.

Смежные вопросы