2011-06-09 46 views
1

我从图像库中选择图像时遇到问题。在我看来,有两个按钮和两个EditText。在单击每个按钮时,我想从图库中选择图像并将图像的路径复制到相应的EditText中。在我的代码中,图像选择正在工作,但路径仅输入到两个按钮的EditText中。请帮帮我。Android中的多个图像选择问题

我的代码:

private String imageType; 

public void browsePositionImage(View button) 
{ 
    imageType = "POSITION"; 
    startActivityForResult(new Intent(Intent.ACTION_PICK, android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI), SELECT_IMAGE); 
} 

public void browseObjectImage(View button) 
{ 
    imageType = "OBJECT"; 
    startActivityForResult(new Intent(Intent.ACTION_PICK, android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI), SELECT_IMAGE); 
} 



@Override 
public void onActivityResult(int requestCode, int resultCode, Intent data) { 
super.onActivityResult(requestCode, resultCode, data); 
if (requestCode == SELECT_IMAGE) 
if (resultCode == Activity.RESULT_OK) { 
    Uri selectedImage = data.getData(); 

    if(imageType == "POSITION") 
    { 
    final EditText txtPImage = (EditText) findViewById(R.id.EditTextPositionImage); 
    txtPImage.setText(getRealPathFromURI(selectedImage)); 
    } 
    else 
    { 
     final EditText txtPImage = (EditText) findViewById(R.id.EditTextObjectImage); 
     txtPImage.setText(getRealPathFromURI(selectedImage)); 
    } 
    } 
} 

回答

0

尝试是这样的

public static final int SELECT_POSITION_IMAGE = 1; 
public static final int SELECT_OBJECT_IMAGE = 2; 

public void browsePositionImage(View button) 
{ 
    startActivityForResult(new Intent(Intent.ACTION_PICK, android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI), SELECT_POSITION_IMAGE); 
} 

public void browseObjectImage(View button) 
{ 
    startActivityForResult(new Intent(Intent.ACTION_PICK, android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI), SELECT_OBJECT_IMAGE); 
} 

@Override 
public void onActivityResult(int requestCode, int resultCode, Intent data) { 
    super.onActivityResult(requestCode, resultCode, data); 
    if (resultCode == Activity.RESULT_OK) { 
     if(requestCode == SELECT_POSITION_IMAGE) 
     { 
      Uri selectedImage = data.getData(); 
      final EditText txtPImage = (EditText) findViewById(R.id.EditTextPositionImage); 
      txtPImage.setText(getRealPathFromURI(selectedImage)); 
     } 
     else if (requestCode == SELECT_OBJECT_IMAGE) 
     { 
      Uri selectedImage = data.getData(); 
      final EditText txtPImage = (EditText) findViewById(R.id.EditTextObjectImage); 
      txtPImage.setText(getRealPathFromURI(selectedImage)); 
     } 
    } 
}