意图和几项活动的困难

时间:2013-02-19 08:34:49

标签: android android-intent

我有一个启动应用程序的主要活动。在主要活动中,我有一个ImageView,它将通过意图从第二个活动中GridView的选定缩略图中获取路径的字符串。

这可能听起来很奇怪,并且更自然地首先使用GridView启动第二个活动,但这是任务的必要条件。

所以我正在努力解决如何处理期望来自第二个活动的意图的字符串imageId的困难?我想我必须按一个按钮打开第二个活动,GridView就像一个菜单按钮,但任何想法如何处理意图的事情?感谢一些帮助!

主要活动中的代码:

String imageId = i.getExtras().getString("image");

ImageView imageView = (ImageView) findViewById(R.id.full_image_view);

Bitmap bitmap =BitmapFactory.decodeFile(imageId);
imageView.setImageBitmap(bitmap);

1 个答案:

答案 0 :(得分:3)

使用startActivityForResult打开第二个活动,例如:

开始第二项活动:

Intent i = new Intent(this, SecondActivity.class);
startActivityForResult(i, 1);

然后处理返回的结果:

 @Override

protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    if(resultCode == Activity.RESULT_OK) {
       String imageId = data.getExtras().getString("image");

       ImageView imageView = (ImageView) findViewById(R.id.full_image_view);

       Bitmap bitmap =BitmapFactory.decodeFile(imageId);
       imageView.setImageBitmap(bitmap);
    }
}

在第二个行为中,选择缩略图时:

 Intent intent = new Intent();
 intent.putExtra("image", path);
 setResult(RESULT_OK, intent);
 finish();

检查https://stackoverflow.com/a/10407371/1434631