从Android的SD卡存储图像路径 [英] storing image path from sdcard in android

查看:149
本文介绍了从Android的SD卡存储图像路径的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何图片路径存入array.as即时图像检索dynamically.n上市them.after点击一项Ø我想将它发送到previous活动图像。
我怎么能存储图像路径?请帮我

 下面为code-

1日活动 -
    公共无效的importfile(视图v){

 意向意图=新意图(这一点,ImportFile.class);    startActivityForResult(意向,1);}
@覆盖
保护无效的onActivityResult(INT申请code,INT结果code,意图数据){
    // TODO自动生成方法存根
    super.onActivityResult(要求code,结果code,数据);    如果(要求code == 1)
    {
        字符串路径= data.getDataString();
        的System.out.println(;;;;;;;;;;;;+路径);
    }
}

第二届活动 -

 在oncreat-
 INT J = 0;
文件[]镜像文件;
 文件f =新的文件(/ SD卡);
        文件[] =文件f.listFiles();        的for(int i = 0; I< files.length;我++,J ++){
            文件文件1 =文件[I]
             如果(myfile.endsWith(JPEG)){
                图像[J] =文件1; //这里我得到空指针异常
            }
           }    @覆盖
    公共无效onCheckedChanged(CompoundButton buttonView,布尔器isChecked){
        诠释J;
        // TODO自动生成方法存根
        为(J = 1; J< idcount; J ++){
            如果(CH [J] .isChecked())
            {
                imagesPaths.add(图像[++ J] .getAbsolutePath());                I =新意图();
                i.putExtra(档案,imagesPaths);
                的setResult(RESULT_OK,I);
                完();
            }
        }
    }


解决方案

 案例1:
            如果(结果code == RESULT_OK){
                乌里selectedImage = imageReturnedIntent.getData();
                字符串路径= getRealPathFromURI(selectedImage);
                LogMsg.d(路径+路径);
                位图B = getBitmap(路径);
                bitmapList.add(二);
                adapter.notifyDataSetChanged();
            }
        打破;

然后

 私人字符串getRealPathFromURI(URI contentUri){
           ContentResolver的解析器= getContentResolver();
           的String [] = PROJ {MediaStore.Video.Media.DATA};
           光标光标= resolver.query(contentUri,凸出,NULL,NULL,NULL);
           INT与Column_Index = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA);
           cursor.moveToFirst();
           返回cursor.getString(Column_Index中);
        }

how to store image path into array.as i'm retrieving images dynamically.n listing them.after clicking on one o the image i want to send it to previous activity. how can i store the image path??please help me

below is code-

1st activity- public void importFile(View v){

    Intent intent=new Intent(this,ImportFile.class);

    startActivityForResult(intent, 1);

}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    // TODO Auto-generated method stub
    super.onActivityResult(requestCode, resultCode, data);

    if(requestCode==1)
    {
        String path=data.getDataString();
        System.out.println(";;;;;;;;;;;;"+path);
    }
}

2nd activity-

in oncreat-
 int j=0;
File[] imagefile;
 File f = new File("/sdcard");
        File[] files = f.listFiles();

        for(int i = 0; i < files.length; i++,j++) {
            File file1 = files[i];
             if(myfile.endsWith(".jpeg")){
                image[j]=file1;//here i'm getting nullpointer exception
            }
           }

    @Override
    public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
        int j;
        // TODO Auto-generated method stub
        for(j=1;j<idcount;j++){
            if(ch[j].isChecked())
            {
                imagesPaths.add(image[++j].getAbsolutePath());

                i=new Intent();
                i.putExtra("files",imagesPaths);
                setResult(RESULT_OK, i);
                finish();
            }       
        }
    }

解决方案

case 1:
            if(resultCode == RESULT_OK){  
                Uri selectedImage = imageReturnedIntent.getData();
                String path = getRealPathFromURI( selectedImage );
                LogMsg.d("PAth "+path);
                Bitmap b = getBitmap(path);
                bitmapList.add(b);
                adapter.notifyDataSetChanged();
            }
        break;

and then;

private String getRealPathFromURI(Uri contentUri) {
           ContentResolver resolver = getContentResolver();
           String[] proj = { MediaStore.Video.Media.DATA };
           Cursor cursor = resolver.query(contentUri, proj, null, null, null);
           int column_index = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA);
           cursor.moveToFirst();
           return cursor.getString(column_index);
        }

这篇关于从Android的SD卡存储图像路径的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆