图片无法加载

时间:2015-05-26 13:20:37

标签: java android-studio imageview

我一直在为用户选择将图片添加到应用程序中的个人资料中。这是到目前为止发生的事情:

您可以按默认图片,它会转到(在这种情况下)保管箱。然后,您选择一张图片并将其加载(如果有效,这将是美丽的)。出现的问题是当我选择了我想要的图片时,它应该加载到新的个人资料图片中。但是个人资料图片并没有被我选择的图片取代。您将在下面看到我在我的个人资料中使用的代码.class

package com.example.wilmar.rentacube.Profile;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.ImageView;
import android.widget.TextView;


import com.example.wilmar.rentacube.R;

/**
 * Created by wilmar on 23-4-2015.
 */
public class Profile extends Activity {

    ImageView contactImageImgView;

    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.profile);



        contactImageImgView = (ImageView) findViewById(R.id.imgViewContactImage);


        contactImageImgView.setOnClickListener(new View.OnClickListener() { // this is where the magic happens (or is supposed to)

            public void onClick (View v){  
                Intent intent = new Intent();
                intent.setType("image*/");
                intent.setAction(intent.ACTION_GET_CONTENT);
                startActivityForResult(intent.createChooser(intent, "Select Profile Image"), 1);
            }
        });

    }




// here should happen some more magic :)
    public void onActivityResult(int reqCode, int resCode, Intent data) {
        if(resCode == RESULT_OK){
            if(resCode == 1)
                contactImageImgView.setImageURI(data.getData());
        }

    }


} 

1 个答案:

答案 0 :(得分:0)

首先,这个

if(resCode == 1)
contactImageImgView.setImageURI(data.getData());

应该是

if( reqCode == 1)    //You used the wrong value here
contactImageImgView.setImageURI(data.getData());

此外,您发送意图的每个应用都会返回略有不同的URI。你最好的办法是记录它,看看它是否没有“垃圾”。