我想将图像库中的图像加载到我的应用程序中并将该图像设置为背景。
这适用于以下代码:
Intent intent = new Intent();
intent.setType("image/*");
intent.setAction(Intent.ACTION_GET_CONTENT);
startActivityForResult(Intent.createChooser(intent,"Select background"), SELECT_PICTURE);
public void onActivityResult(int requestCode, int resultCode, Intent data) {
if (resultCode == RESULT_OK) {
if (requestCode == SELECT_PICTURE) {
Uri selectedImageUri = data.getData();
Drawable bg;
try {
InputStream inputStream = getContentResolver().openInputStream(selectedImageUri);
bg = Drawable.createFromStream(inputStream, selectedImageUri.toString());
} catch (FileNotFoundException e) {
bg = ContextCompat.getDrawable(this, R.drawable.bg);
}
drawView.startNew();
drawView.setBackground(bg);
}
}
}
问题是我想将此信息存储在应用程序中,并且在用户关闭并重新打开应用程序后我仍然希望拥有自定义背景图像。
我不知道如何存档。
我尝试存储图像的 Uri,但遇到了一些权限问题 (android.permission.MANAGE_DOCUMENTS
),这是已知问题。
如何得到预期的结果?
最佳答案
将onActivityResult
中的图像保存到存储中,然后将文件路径保存在SharedPreference
或数据库中...因此每次用户回来时,您都会加载它并设置作为背景
关于Android - 从图库加载图像并设置为背景,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35522893/