Monday, August 19, 2013

Android - Camera Example


Set the captured image using CAMERA in ImageView



Main.xml

<?xml version="1.0"encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/widget27"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">

    <Button
        android:id="@+id/button1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_centerHorizontal="true"
        android:text="Take a Photo" >
    </Button>

    <ImageView
        android:id="@+id/imageView1"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_above="@+id/button1"
        android:layout_alignParentTop="true"
        android:src="@drawable/ic_launcher">
    </ImageView>

</RelativeLayout>




CameraExampleActivity.java


package com.CameraExample;

import android.app.Activity;
import android.content.Intent;
import android.graphics.Bitmap;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;

public class CameraExampleActivity extends Activity {

            private static final int CAMERA_REQUEST= 1888;
ImageView imageView;
public void onCreate(Bundle savedInstanceState) {

                        super.onCreate(savedInstanceState);
                        setContentView(R.layout.main);

                        imageView = (ImageView) this.findViewById(R.id.imageView1);
                        Button photoButton = (Button) this.findViewById(R.id.button1);

                        photoButton.setOnClickListener(new View.OnClickListener() {

                                    @Override
                                    public void onClick(View v) {
                                                Intent cameraIntent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
                                                startActivityForResult(cameraIntent, CAMERA_REQUEST);
                                    }
                        });
            }

            protected void onActivityResult(int requestCode, int resultCode, Intent data) {
                        if (requestCode == CAMERA_REQUEST) {
                                    Bitmap photo = (Bitmap) data.getExtras().get("data");
                                    imageView.setImageBitmap(photo);
                        }
            }

}