2012-06-05 56 views
0

我試圖打開安卓相機,當我按下OK時,相機活動應該返回到父活動「從中開始相機活動的那個活動」相機活動不會返回到它的父級活動

但現在發生的是,當我按OK時,相機活動仍保留在屏幕上,並且不會返回到父活動。

代碼

private String retrievePath() { 
    int []x = imgOpHlpr.getIDs(); 
    String s = imgOpHlpr.getImg_Path(x.length); 
    return s;  
} 

代碼

private static final int RequestCode = 0; 
OnClickListener btn_TakePictureListener = new OnClickListener() { 

    @Override 
    public void onClick(View v) { 
     // TODO Auto-generated method stub 
     Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); 
     String imgPath = retrievePath(); 
     intent.putExtra(MediaStore.EXTRA_OUTPUT, getImageUri(imgPath)); 
     startActivityForResult(intent, RequestCode); 
    } 
}; 
@Override 
protected void onActivityResult(int requestCode, int resultCode, Intent data) { 
    //super.onActivityResult(requestCode, resultCode, data); 

    if (RequestCode == requestCode && resultCode == RESULT_OK) { 
     //String s = data.getData().toString(); 
     //Toast.makeText(getBaseContext(), ""+s, Toast.LENGTH_SHORT).show(); 
     Toast.makeText(getBaseContext(), "picture is taken", Toast.LENGTH_SHORT).show(); 
    }   
} 
+0

你使用的是什麼設備? – FoamyGuy

+0

我正在使用模擬器 – Amr

+0

你的意思是仍然在屏幕上?你可以在這裏粘貼你的日誌。同時粘貼retrievePath方法體 –

回答

2

模擬器不提供攝像頭支持。請參閱http://code.google.com/p/android/issues/detail?id=14545。因此請檢查設備。

檢查

if (resultCode == RESULT_OK) { 
      if (data.getExtras().get("data") != null) { 
       Bitmap photo = Bitmap.createScaledBitmap((Bitmap) data.getExtras().get("data"), 90, 90, false); 
       if(photo != null){ 
        Log.d("Photo","photo not null"); 
} 
+0

模擬器沒有相機,但是如果你調用相機,它不會被強制關閉,而是會啓動相機(我們只會看到黑屏),如果我們點擊捕捉按鈕,它將返回android標誌。所以,即使psychicLit使用模擬器,他也不應該遇到任何問題。 – Shrikant

+0

它不適用於所有sdk版本。 – user936414

+0

問題是:單擊確定後,攝像機活動不會返回到其父活動 – Amr