gpt4 book ai didi

java - 如何将位图添加到图库中的特定相册?

转载 作者:行者123 更新时间:2023-12-02 09:58:34 29 4
gpt4 key购买 nike

我尝试了很多方法,但没有一个有效。我想创建一个特定的相册并将位图保存到其中的 JPEG 中。

我使用 Xamarin。我该怎么办?

最佳答案

我写了一个关于它的演示。

我将图片放入资源文件夹中,然后将其读取为位图

 btnSelectImage = (Button)FindViewById(Resource.Id.btnSelectImage);
Bitmap bitmap = BitmapFactory.DecodeResource(this.ApplicationContext.Resources , Resource.Drawable.splashlogo);
btnSelectImage.Click += (o, e) =>
{
saveImageToGally(bitmap, this);
};

然后将其发送到图库中的特定相册。

enter image description here

有代码。

public void saveImageToGally(Bitmap finalBitmap,Context context)
{
//create a directory called MyCamera
string root = Environment.GetExternalStoragePublicDirectory(Environment.DirectoryDcim).ToString() + "/MyCamera/";

//create the Directory
System.IO.Directory.CreateDirectory(root);

File myDir = new File(root);
myDir.Mkdir();
//Image name
string fname = "Image-" + "Image1" + ".png";
File file = new File(myDir, fname);
Log.Error("FilePath", file.AbsolutePath);

if (file.Exists()) file.Delete();
Log.Error("FilePath", root + fname);
//total path
string path = root + fname;

try
{


var fs = new System.IO.FileStream(path, System.IO.FileMode.OpenOrCreate);
if (fs != null)
{
finalBitmap.Compress(Bitmap.CompressFormat.Png, 90, fs);
fs.Close();
}

}
catch (Exception e)
{
e.PrintStackTrace();

}

MediaScannerConnection.ScanFile(context, new string[] { file.Path }, new string[] { "image/jpeg" }, null);

}

请不要忘记添加以下权限。

<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

关于java - 如何将位图添加到图库中的特定相册?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55797149/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com