2012-05-15 2 views
0

У меня есть действие A. Начало действия B из A. В действии B я захватываю изображение с камерой, присутствующей на устройстве, и в конце этого действия возвращаются к Activity A. В это действие должно отображать захваченное изображение. Как выполнить эту задачу? Запуск на версии 2.3.3 ... Посмотрел здесь Capture Image from Camera and Display in Activity, но тот же NullPointerException ... Работает на устройстве LG.Захват и отображение изображений в действиях

ответ

0

Вы можете передать URL-адрес захваченного изображения из Activity B в Activity A, используя aim.putExtras methos.

Passing string array between android activities см

для захвата изображения см ниже код

public class Camera extends Activity 
{ 
    private static final int CAMERA_REQUEST = 1888; 
    private String selectedImagePath; 
    WebView webview; 
    String fileName = "capturedImage.jpg"; 
    private static Uri mCapturedImageURI; 

    @Override 
    public void onCreate(Bundle savedInstanceState) 
    { 
     super.onCreate(savedInstanceState); 
      webview=(WebView)findViewById(R.id.webView1); 
    } 

    public void TakePhoto() 
    { 
      ContentValues values = new ContentValues(); 
      values.put(MediaStore.Images.Media.TITLE, fileName); 
      mCapturedImageURI = getContentResolver().insert(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, values); 
      Intent cameraIntent = new Intent(ACTION_IMAGE_CAPTURE); 
      cameraIntent.putExtra(MediaStore.EXTRA_OUTPUT, mCapturedImageURI); 
      startActivityForResult(cameraIntent, CAMERA_REQUEST); 
    }  
    @Override 
    public void onActivityResult(int requestCode, int resultCode, Intent data) 
    { 
     if (resultCode == RESULT_OK) 
      { 
       if (requestCode == CAMERA_REQUEST) 
       { 
       selectedImagePath = getPath(mCapturedImageURI); 
       //Save the path to pass between activities 
       } 
      } 
    } 

    public String getPath(Uri uri) { 
     String[] projection = { MediaStore.Images.Media.DATA }; 
     Cursor cursor = managedQuery(uri, projection, null, null, null); 
     int column_index = cursor 
       .getColumnIndexOrThrow(MediaStore.Images.Media.DATA); 
     cursor.moveToFirst(); 
     return cursor.getString(column_index); 
    } 

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