更改应用程序背景

发布于 2025-01-05 01:29:25 字数 369 浏览 0 评论 0原文

我目前正在制作一个 Android 应用程序,我希望用户能够更改背景图像。 我有 3 张图像和一个屏幕,我可以在其中选择一张图片和一个用于应用的按钮。

问题: 我可以允许用户以我想要的方式查看所有图像,但我不知道如何将所选图像设置为应用程序背景。

我想做的事情: 我希望用户单击一个按钮,将所选图像导出到“/res/drawable-mdpi”中的“bakgrund.png”并替换当前图像。这将使我能够轻松集成后台切换器。重命名当前文件也有效。

PS:我当前的背景图片位于 /res/drawable-mdpi 中,名为 1.png、2.png 和 3.png。

I'm currently making an android app in which I'd like the user to be able to change the background image.
I've got 3 images and a screen where I can choose a picture and a button for applying.

The issue:
I can allow the user to see all images in the way I want, but I don't know how to set the selected image as app background.

What I want to do:
I want the user to click a button, which exports the selected image to "bakgrund.png" in "/res/drawable-mdpi" and replaces the current one. This would allow me to easily integrate the background switcher. Renaming of current files also works.

PS: My current background images are located in /res/drawable-mdpi named 1.png 2.png and 3.png.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

熊抱啵儿 2025-01-12 01:29:25

最简单的方法是在根布局上调用 setBackgroundResource(image_id) 方法。就像如果您有一个 LinearLayout ,其中 android:id="@+linear" 作为布局 xml 中的根布局,那么此代码将有所帮助:-

LinearLayout linearLayout=(LinearLayout) findViewById(R.id.linear);
linear.setBackgroundResource(R.drawable.1);//call this in the OnClickListener's OnClick Method

Easiest way would be to call the setBackgroundResource(image_id) method on the root layout. Like if you have a LinearLayout which has android:id="@+linear" as the root layout in the layout xml, then this code will help:-

LinearLayout linearLayout=(LinearLayout) findViewById(R.id.linear);
linear.setBackgroundResource(R.drawable.1);//call this in the OnClickListener's OnClick Method
萌面超妹 2025-01-12 01:29:25

首先,您需要具有不同背景的不同主题。因此,您可以在 Activity 中使用 this.setTheme 方法。

事实上,我建议您使用两种不同的布局(具有不同的背景,但具有相同的组件)并在onClick期间使用setContentView

我希望它能解决您的问题。

Firstly, you need different themes which has different backgrounds. So you may use this.setTheme method in your Activity.

Indeed I suggest you, two different layout (with different backgrounds but have same components) and using setContentView during onClick.

I hope it solves your issue.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文