我正在处理一个项目,需要为所有屏幕尺寸设置相同的背景图片。如何实现?如何在Android Studio中为所有屏幕尺寸设置背景图片?我们如何将文件夹放入drawable文件夹中?
我正在处理一个项目,需要为所有屏幕尺寸设置相同的背景图片。如何实现?如何在Android Studio中为所有屏幕尺寸设置背景图片?我们如何将文件夹放入drawable文件夹中?
将您的图像转换为以下所有尺寸,并粘贴到特定文件夹中。
xxxhdpi: 1280x1920 px
xxhdpi: 960x1600 px
xhdpi: 640x960 px
hdpi: 480x800 px
mdpi: 320x480 px
ldpi: 240x320 px
这个应用程序在所有设备上运行的最佳尺寸是什么?
将简单的可绘制文件夹放置在那里,并将您的图像粘贴到那里。然后打开styles.xml,粘贴此行代码。
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<!-- Customize your theme here. -->
<item name="colorPrimary">@color/colorOrange</item>
<item name="colorAccent">@color/colorAccent</item>
<item name="android:windowBackground">@drawable/yourImage</item>
</style>
使用ImageView而不是将图像添加到某个视图的背景中。
使用ImageView不会拉伸您的图像,而只会裁剪图像中不适合的部分。这项工作由scaleType="centerCrop"标签完成。
以下是示例代码:
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/activity_class"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="lpt.com.attendance.ActivityClass.Activity_Class">
<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:adjustViewBounds="true"
android:scaleType="centerCrop"
android:src="@drawable/background" />
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
//Now this is your main layout to put everything.
</RelativeLayout>
</FrameLayout>
我在我的项目中也需要这个功能,我们有两个选项:
1)将图像放置在相应的res文件夹hdpi至xxxhdpi中并进行加载,但在这种情况下,我们必须为单个项目维护7-8个图像。
另一个解决方案是
2)使用已经过测试的响应式HTML,并将其放置在资产的原始文件夹中,然后在WebView中加载URL,该WebView应与ImageView相同。如果您需要ImageView的单击事件,则可以使用WebView的触摸事件。
这两种解决方案都能很好地工作。我们以前使用方法1,但现在转向第二种方法以减少一些内存和处理问题。如果仍然有任何疑问,请随时提问...