我已经使用了开关,因此选择按钮2时应用程序允许用户从SD卡中选择图像。
在 OnActivityResult 我得到图像 uri,然后我想得到这个 URI 文件路径并在具有 Action_send 函数的同一活动中的按钮 1 上使用它。
public void onClick(View v) {
// TODO Auto-generated method stub
switch (v.getId()){
case R.id.button1:
Intent i = new Intent(Intent.ACTION_SEND);
Uri blah = Uri.parse(selectedImagePath);
i.setType("image/*");
i.putExtra(Intent.EXTRA_STREAM, blah);
startActivity(Intent.createChooser(i, "title")); // TODO Auto-generated method stub
break;
case R.id.button2:
Intent intent = new Intent(Intent.ACTION_PICK, android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
startActivityForResult(intent, PICK_FROM_FILE);
break;
}
}
protected void onActivityResult(int requestCode, int resultCode, Intent data)
{
super.onActivityResult(requestCode, resultCode, data);
if (resultCode == RESULT_OK){
if(requestCode == PICK_FROM_FILE){
imageUri = data.getData();
//gotimage.setImageURI(selectedImageUri);
selectedImagePath = getPath(imageUri);
}
}
}
private String getPath(Uri selectedImageUri) {
// TODO Auto-generated method stub
String[] projection = { MediaStore.Images.Media.DATA };
Cursor cursor = managedQuery(imageUri, projection, null, null, null);
int column_index = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA);
cursor.moveToFirst();
return cursor.getString(column_index);
}
}
我在另一个问题上看到了这些家伙的代码,我看到那个家伙说要使用文件路径,如何使用 action_send 函数来完成?
非常感谢