Hi
Friends, I
am going to explain a sample application in android ,which gives
you
an idea , How to select Image from gallery and how to capture image from camera and after it crop it according our use.For this I have used android default camera and android default gallery.Hope this will helps you......
an idea , How to select Image from gallery and how to capture image from camera and after it crop it according our use.For this I have used android default camera and android default gallery.Hope this will helps you......
1-
Print Screen of Home Page
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="camera.test.demo" android:versionCode="1" android:versionName="1.0" > <uses-sdk android:minSdkVersion="8" /> <application android:icon="@drawable/ic_launcher" android:label="@string/app_name" > <activity android:name=".SimpleCameraGalleryDemo" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> </manifest>3-SimpleCameraGalleryDemo Code
package camera.test.demo; import android.app.Activity; import android.content.ActivityNotFoundException; import android.content.Intent; import android.graphics.Bitmap; import android.os.Bundle; import android.provider.MediaStore; import android.view.View; import android.widget.Button; import android.widget.ImageView; public class SimpleCameraGalleryDemo extends Activity { private static final int PICK_FROM_CAMERA = 1; private static final int PICK_FROM_GALLERY = 2; ImageView imgview; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); imgview = (ImageView) findViewById(R.id.imageView1); Button buttonCamera = (Button) findViewById(R.id.btn_take_camera); Button buttonGallery = (Button) findViewById(R.id.btn_select_gallery); buttonCamera.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { // call android default camera Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); intent.putExtra(MediaStore.EXTRA_OUTPUT, MediaStore.Images.Media.EXTERNAL_CONTENT_URI.toString()); // ******** code for crop image intent.putExtra("crop", "true"); intent.putExtra("aspectX", 0); intent.putExtra("aspectY", 0); intent.putExtra("outputX", 200); intent.putExtra("outputY", 150); try { intent.putExtra("return-data", true); startActivityForResult(intent, PICK_FROM_CAMERA); } catch (ActivityNotFoundException e) { // Do nothing for now } } }); buttonGallery.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub Intent intent = new Intent(); // call android default gallery intent.setType("image/*"); intent.setAction(Intent.ACTION_GET_CONTENT); // ******** code for crop image intent.putExtra("crop", "true"); intent.putExtra("aspectX", 0); intent.putExtra("aspectY", 0); intent.putExtra("outputX", 200); intent.putExtra("outputY", 150); try { intent.putExtra("return-data", true); startActivityForResult(Intent.createChooser(intent, "Complete action using"), PICK_FROM_GALLERY); } catch (ActivityNotFoundException e) { // Do nothing for now } } }); } protected void onActivityResult(int requestCode, int resultCode, Intent data) { if (requestCode == PICK_FROM_CAMERA) { Bundle extras = data.getExtras(); if (extras != null) { Bitmap photo = extras.getParcelable("data"); imgview.setImageBitmap(photo); } } if (requestCode == PICK_FROM_GALLERY) { Bundle extras2 = data.getExtras(); if (extras2 != null) { Bitmap photo = extras2.getParcelable("data"); imgview.setImageBitmap(photo); } } } }Main.xml
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" > <TextView android:id="@+id/textViewAddCard" android:layout_width="250dp" android:layout_height="50dp" android:text="Take Image" android:textSize="16dp" android:layout_gravity="center" android:gravity="center" android:typeface="sans"/> <Button android:id="@+id/btn_take_camera" android:layout_width="250dp" android:layout_height="50dp" android:text="Take From Camera" android:layout_marginTop="5dp" android:layout_gravity="center" android:typeface="sans"/> <Button android:id="@+id/btn_select_gallery" android:layout_width="250dp" android:layout_height="50dp" android:text="Select from Gallery" android:layout_marginTop="10dp" android:layout_gravity="center" android:typeface="sans" /> <ImageView android:id="@+id/imageView1" android:layout_gravity="center" android:layout_width="wrap_content" android:layout_height="wrap_content" /> </LinearLayout>