2016-10-29 8 views
-2

Я пытаюсь получить изображение для захвата и отображения в ImageView на Android Studio, но он просто захватывает и не отображает изображение.Imageview не отображает снятое изображение

КОД:

public class MainActivity extends AppCompatActivity { 

    Button click; 
    private static final int camRequest = 1; 
    ImageView imageView; 
    Bitmap bit; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 
     click = (Button)findViewById(R.id.button); 
     click.setOnClickListener(delListener); 
     imageView = (ImageView)findViewById(R.id.imageView); 
    } 

    public View.OnClickListener delListener = new View.OnClickListener() { 
     public void onClick (View view){ 
      try { 
       Intent captureIntent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE); 
       startActivityForResult(captureIntent, camRequest); 
      } 
      catch(ActivityNotFoundException e){ 
       Log.e("", "errpr"); 

      } 

     }}; 

    protected void onActivityResult(int requestCode, int resultCode, Intent data) { 
     //super.onActivityResult(requestCode, resultCode, data); 
     if (resultCode == camRequest) { 
      Bitmap bit2 = (Bitmap) data.getExtras().get("data"); 
      imageView.setImageBitmap(bit2); 
     } 

    } 

Я думаю, что я делал все правильно и в файле Manifest я добавил разрешение на уже камеры, так что это не проблема.

+0

Вы пробовали отладки? – Raghunandan

+0

Если вы тестируете в post lollipop, пользователь должен предоставить «разрешение на запуск» – kId

ответ

1

Ошибка в:

if (resultCode == camRequest)

resultCode используется Activity, чтобы показать, если результат является либо OK или ERROR.

Замените его:

if (requestCode == camRequest && resultCode == Activity.RESULT_OK)

1

код результата не следует сравнивать есть, правильный путь:

... 
// check if request code is camRequest 
if(requestCode == camRequest){ 
    if(resultCode == Activity.RESULT_OK){ 
     // If result is okay...do something 
    } else { 
     // there was a failure. 
    } 
} 
+0

DId @ M.Waqas Pervez сказал что-то еще? – Kunu

+0

О, я не знал, что он ответил, когда я отвечал, я не знал, что он ответил, он обновился позже. –

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