Demo:
3)Download this code Click Here
1)MainActivity.java:
package
com.venky.getpathfromselectedimage;
import java.io.File;
import
java.io.FileNotFoundException;
import
java.io.InputStream;
import
android.app.Activity;
import
android.content.Intent;
import
android.database.Cursor;
import
android.graphics.Bitmap;
import
android.graphics.BitmapFactory;
import
android.net.Uri;
import
android.os.Bundle;
import
android.provider.MediaStore;
import
android.view.View;
import
android.view.View.OnClickListener;
import
android.widget.Button;
import
android.widget.EditText;
import
android.widget.ImageView;
public class MainActivity extends Activity {
Button btnSelectImage;
EditText edtPath;
ImageView iv;
@Override
protected void onCreate(Bundle
savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btnSelectImage = (Button)
findViewById(R.id.button1);
edtPath = (EditText) findViewById(R.id.editText1);
iv = (ImageView) findViewById(R.id.imageView1);
btnSelectImage.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View
arg0) {
// TODO
Auto-generated method stub
Intent browseIntent = new Intent(Intent.ACTION_PICK);
browseIntent.setType("image/*");
startActivityForResult(browseIntent,
1);
}
});
}
@Override
protected void
onActivityResult(int requestCode, int resultCode, Intent data) {
// TODO
Auto-generated method stub
super.onActivityResult(requestCode,
resultCode, data);
if (requestCode ==
1) {
try {
Uri selectedImage =
data.getData();
InputStream is =
getContentResolver().openInputStream(
selectedImage);
Bitmap bitmap =
BitmapFactory.decodeStream(is);
iv.setImageBitmap(bitmap);
File imgFile = new
File(getRealPathFromURI(selectedImage));
edtPath.setText(imgFile.toString());
} catch
(FileNotFoundException e) {
// TODO
Auto-generated catch block
e.printStackTrace();
}
}
}
public String
getRealPathFromURI(Uri uri) {
Cursor cursor =
getContentResolver().query(uri, null, null, null, null);
if (cursor == null)
return uri.getPath();
else {
cursor.moveToFirst();
int idx = cursor
.getColumnIndex(MediaStore.Images.ImageColumns.DATA);
return cursor.getString(idx);
}
}
}
2)activity_main.xml:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/LinearLayout1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".MainActivity"
>
<Button
android:id="@+id/button1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:text="Browse
Image" />
<EditText
android:id="@+id/editText1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="5dp"
>
</EditText>
<ImageView
android:id="@+id/imageView1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginTop="5dp"
/>
</LinearLayout>
3)Download this code Click Here
thanx its superb!!!
ReplyDelete