【问题标题】:How to pass the image from Activity B to previous Activity A on Back pressed by shared preference android如何通过共享首选项android将图像从Activity B传递到上一个Activity A
【发布时间】:2017-08-26 07:33:03
【问题描述】:

如果我更改了第二个活动的图像,我想更改上一个活动的图像,当我返回上一个活动时,应该更改图像。

https://i.stack.imgur.com/7bTnj.png

【问题讨论】:

  • 你的图片是保存在sd卡还是什么的?
  • 我已从图库中获取图像并保存在同一个活动中,但想在上一个活动中传递该图像
  • 我不会使用 SharedPreference,除非它是您希望在两次运行之间持续的永久设置。无论如何,答案是使用 startActivityForResult 并更改 onActivityResult 中的图像
  • 能否给出代码如何通过forResult将图像从B传递给A活动如何在A活动中检索图像
  • 如前所述,使用 startActivityForResult 并将图像的文件路径设置为第二个活动的结果。这与您处理从图库中选择图像的方式相同。也许你想看看这个androidbitmaps.blogspot.de/2015/04/…

标签: android sqlite sharedpreferences startactivityforresult


【解决方案1】:

尝试在您的代码中自定义以下代码。它会起作用的。

这是您要跟踪的第一个活动,如果图像已更改并希望加载更改的图像。

public class A extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_a);
        //YOUR OTHER CODE HERE..

        startActivityForResult(new Intent(A.this, B.class), 111);
    }

    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        if (requestCode == 111 && resultCode == RESULT_OK) {
            if (data.getExtras() != null) {
                //set your image path which has been returned by previous activity to your imageview here
                //data.getExtras().getString("image_path")
            }
        }
        super.onActivityResult(requestCode, resultCode, data);
    }
}

这是您要更改图像的下一个活动

public class B extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_b);
        //YOUR OTHER CODE HERE..
    }

    @Override
    public void onBackPressed() {
        Intent intent = new Intent();
        intent.putExtra("image_path", "CHANGED_IMAGE_PATH");
        setResult(RESULT_OK, intent);
        super.onBackPressed();
    }
}

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-04-05
  • 1970-01-01
  • 2020-10-19
  • 2016-10-12
  • 1970-01-01
相关资源
最近更新 更多