Android onActivityResult查询
我有两项活动A,B 从活动A中,我确实打开了我的图库,我希望当从图库中选择图片时,它应该进入活动B,而不是活动C 这可能吗Android onActivityResult查询,android,start-activity,Android,Start Activity,我有两项活动A,B 从活动A中,我确实打开了我的图库,我希望当从图库中选择图片时,它应该进入活动B,而不是活动C 这可能吗 share_picture.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View arg0) { // TODO Auto-generated method stub
share_picture.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
Intent choosePic = new Intent(Intent.ACTION_PICK,
MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
startActivityForResult(choosePic, LOAD_IMAGE_GALLERY);
}
});
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
// TODO Auto-generated method stub
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == LOAD_IMAGE_GALLERY && resultCode == RESULT_OK
&& null != data) {
Uri selectedImage = data.getData();
String[] filePathColumn = { MediaStore.Images.Media.DATA };
Cursor cursor = getContentResolver().query(selectedImage,
filePathColumn, null, null, null);
cursor.moveToFirst();
int columnIndex = cursor.getColumnIndex(filePathColumn[0]);
picturePath = cursor.getString(columnIndex);
//I WANT TO CALL ACTIVITY B FROM HERE.. THAT AFTER THE PICTURE IS SELECTED IT SHOULD GO ON ACITIVITY B AND NOT ON A.
}
}
谢谢把你的文件路径列放进去。 完成
活动
C;
并有意调用
Activity
B 在picturePath=cursor.getString(columnIndex)之后的onActivityResult
中编写此代码即可代码>
现在在这里写Intent
code
Intent intent= new Intent(A.java,B.class);
startActivity(intent);
您只需将意图从onActivityResult()
内部activitya
传递到ActivityB
通过意图传递picturePath
ActivityA.java
protected void onActivityResult(int requestCode, int resultCode, Intent data)
{
//Insert it once you got the picturePath through Content Resolver
picturePath = cursor.getString(columnIndex);
Intent forwardToB=new Intent(getApplicationContext(),ActivityB.class);
forwardToB.putExtras("PATH",picturePath);
startActivity(forwardToB);
}
Intent i=getIntent();
String pathToImage=i.getStringExtra("PATH");
OR
Bundle extras = this.getIntent().getExtras();
if (extras != null)
{
String value = extras.getString("PATH");
}
ActivityB.java
protected void onActivityResult(int requestCode, int resultCode, Intent data)
{
//Insert it once you got the picturePath through Content Resolver
picturePath = cursor.getString(columnIndex);
Intent forwardToB=new Intent(getApplicationContext(),ActivityB.class);
forwardToB.putExtras("PATH",picturePath);
startActivity(forwardToB);
}
Intent i=getIntent();
String pathToImage=i.getStringExtra("PATH");
OR
Bundle extras = this.getIntent().getExtras();
if (extras != null)
{
String value = extras.getString("PATH");
}
现在,只要pathToImage
在您的ActivityB