不同模块的Requestcode和Resultcode处理

时间:2016-07-18 06:48:06

标签: android onactivityresult startactivityforresult

在我的Android应用中,我有' imageselect'模块从图库或相机拍摄的图像中选择图像和应用程序'模块来处理和显示它。对于我做的不同请求代码

public static final int REQUEST_CODE_PHOTO = 2000;
public static final int REQUEST_CODE_CAMERA = 2006;

在imageselect模块活动中完美地获取请求代码和结果代码

开始活动两个选项的结果

//to choose gallery image 
Intent intent = new Intent(getApplicationContext(), ImageSelectActivity.class);
intent.putExtra(Constants.INTENT_EXTRA_ALBUM, albums.get(position).name);
startActivityForResult(intent, Constants.REQUEST_CODE_PHOTO); 


// to capture camera image     
Intent cameraIntent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
startActivityForResult(cameraIntent, Constants.REQUEST_CODE_CAMERA);

OnActivity结果:

if(requestCode == Constants.REQUEST_CODE_PHOTO && resultCode == RESULT_OK && data != null) {
        setResult(RESULT_OK, data);
        finish();
        Toast.makeText(AlbumSelectActivity.this,"Calling ALbum IF",Toast.LENGTH_SHORT).show();
    }else if(requestCode == Constants.REQUEST_CODE_CAMERA && resultCode == RESULT_OK && data != null){
        setResult(RESULT_OK, data);
        finish();
        Toast.makeText(AlbumSelectActivity.this,"Calling ALbum ELSE IF",Toast.LENGTH_SHORT).show();
    }

直到这个工作正常。在我的app模块活动中始终获得相同的请求代码。总是得到2000这是照片请求代码。

应用程序模块MainActivity onActivityResult:

if (resultCode == RESULT_OK) {
        if (requestCode == Constants.REQUEST_CODE_PHOTO && data != null) {
           // always getting 'REQUEST_CODE_PHOTO' so this block is working 

        } else if (requestCode == Constants.REQUEST_CODE_CAMERA && data != null) {
            // this block never called even when 'REQUEST_CODE_CAMERA' passed 
        }
    }

1 个答案:

答案 0 :(得分:0)

尝试使用应用模块MainActivity onActivityResult

$(".paddle-nav-item a").click(function(e){

    // Hold the click event
    e.preventDefault();
    // Opacity effect
    $("body").animate({"opacity":"0"},200,function(){

        // Callback retreive the href and redirect AFTER the animation has completed
        redirectTo = $(this).attr("href");
        location.assign(redirectTo);
    });
});

OnActivity结果

if (resultCode == RESULT_OK) {
        if (requestCode == Constants.REQUEST_CODE_PHOTO && data != null) {
           // always getting 'REQUEST_CODE_PHOTO' so this block is working 

        } else if(requestCode == Constants.REQUEST_CODE_CAMERA && data != null) {
            // this block never called even when 'REQUEST_CODE_CAMERA' passed 
        }else{}
    }