gpt4 book ai didi

java - 如何从字符串列表/URL 设置为壁纸

转载 作者:行者123 更新时间:2023-12-02 10:55:54 27 4
gpt4 key购买 nike

大家好,我正在创建一个壁纸应用程序,从 Firebase 数据库中获取字符串格式的所有图像。

现在我陷入了“设置为壁纸”的困境,因为图像采用 Url 格式,并且壁纸Manager.setResource(int) 仅支持 int 格式。

我也尝试过将 Url 转换为位图,但它也不适合我。

fabSetWallpaper.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String urldisplay = list.get(position).getImageURL();
Bitmap bmp = null;

try {
URL ulrn = new URL(urldisplay);
HttpURLConnection con = (HttpURLConnection) ulrn
.openConnection();
InputStream is = con.getInputStream();
bmp = BitmapFactory.decodeStream(is);

int widthPx = getWindowManager().getDefaultDisplay()
.getWidth();
int heightPx = getWindowManager().getDefaultDisplay()
.getHeight();
bmp = Bitmap.createScaledBitmap(bmp, widthPx, heightPx,
true);

} catch (Exception ex) {

}

WallpaperManager myWallpaperManager = WallpaperManager
.getInstance(getApplicationContext());
try {
myWallpaperManager
.setBitmap(bmp);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

Toast.makeText(SecondTest2Activity.this, "Wallpaper Successfully Set On Screen ", Toast.LENGTH_LONG).show();
}
});

我已经尝试了上面的代码,但没有工作......可能这个问题会与某人重复,但我在网上搜索了很多,但没有找到任何解决方案

I have found the solution

String url = list.get(position).getImageURL();
ImageView img=new ImageView(SecondTest2Activity.this);
Picasso.get().load(url).into(img);
Bitmap bitmapImg = ((BitmapDrawable) img.getDrawable()).getBitmap();

WallpaperManager myWallpaperManager = WallpaperManager
.getInstance(getApplicationContext());
try {
myWallpaperManager
.setBitmap(bitmapImg);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

最佳答案

我能想到的最简单的方法是使用 Glide对于 Android,您可以将 url 传递给 load() 方法,该 URL 应为 String 类型。如果您有 Url 对象列表,则只需获取该对象的字符串表示形式并使用以下代码行:

GlideApp
.with(myFragment)
.load(url)
.centerCrop()
.into(yourImageView);

关于java - 如何从字符串列表/URL 设置为壁纸,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51749182/

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