如何通过android路径在活动之间发送图像

如何通过android路径在活动之间发送图像,android,Android,我尝试通过路径将图像发送到另一个活动。没有错误,但图像不可见。我认为发送路径可能有问题,但我不知道。图像在目录中可绘制 谢谢你的帮助 这是我的第一个活动: public void onClickObamaBtn(View v){ Intent intent = new Intent(this, EkranB.class); String path = getString(R.drawable.obama); Toast.makeText(this, path, Toas

我尝试通过路径将图像发送到另一个活动。没有错误,但图像不可见。我认为发送路径可能有问题,但我不知道。图像在目录中可绘制

谢谢你的帮助

这是我的第一个活动:

public void onClickObamaBtn(View v){

    Intent intent = new Intent(this, EkranB.class);
    String path = getString(R.drawable.obama);
    Toast.makeText(this, path, Toast.LENGTH_LONG).show();
    intent.putExtra("president", path);
    startActivity(intent);
}
这是第二个:

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

    ivObama = (ImageView) findViewById(R.id.iV1);
    preferences = this.getSharedPreferences("prezydenciUsa", Context.MODE_PRIVATE);

    String path = getIntent().getStringExtra("president");
    Drawable president = Drawable.createFromPath(path);     

    ivObama.setImageDrawable(president);

}

您所指的路径是
可绘制的
中的
资源
,它是
int的
资源id

您可以直接从
资源中设置图像,如下所示

 imageView.setImageDrawable(getResources().getDrawable(R.id.obama));
 int pathId = getResources().getDrawable(R.id.obama);
 intent.putExtra("president", pathId);
int pathId = getIntent().getIntExtra("president", -1);
imageView.setImageDrawable(pathId);
我不明白,为什么需要传递
资源id
,因为所有
活动都可以访问资源

如果您真的需要通过drawable-through意图,那么就这样做

 imageView.setImageDrawable(getResources().getDrawable(R.id.obama));
 int pathId = getResources().getDrawable(R.id.obama);
 intent.putExtra("president", pathId);
int pathId = getIntent().getIntExtra("president", -1);
imageView.setImageDrawable(pathId);
现在,获取资源id并将其设置为
ImageView
,如下所示

 imageView.setImageDrawable(getResources().getDrawable(R.id.obama));
 int pathId = getResources().getDrawable(R.id.obama);
 intent.putExtra("president", pathId);
int pathId = getIntent().getIntExtra("president", -1);
imageView.setImageDrawable(pathId);

但在Drawable中,我有三种不同的图像。在第一个活动中,我有三个按钮。在第二个活动中,根据我按下的按钮,我想向我闪现不同的图片。这就是我想按路径做的原因。然后使用我的第二种方法传递可绘制的意图。传递可提取的id intent.putExtra(“总统”,pathId);