我需要在res/drawable文件夹中添加图片......
当我选择时new > image asset,会出现一个对话框来选择Asset Type......
如何将图像添加到res/drawable文件夹?
我看到很多应用程序使用全屏图像作为背景.这是一个例子:

我想在一个项目中使用它,到目前为止我发现的最好方法是使用大尺寸的图像,将其放入ImageView并用于android: adjustViewBounds="true"调整边距
问题是如果分辨率非常高的屏幕,图像不足.
我想到的另一个选择是在a中使用图像FrameLayout,使用match_parentin width和heightas作为背景...这会拉伸图像,但我认为结果不是很好.
你会怎么做?
我有一个背景,我需要适合所有屏幕尺寸.我有三个文件夹,hdpi,ldpi并mdpi为可绘制,但在模拟器有什么分辨率没有任何referense hdpi是什么mdpi和ldpi有.
我使用本教程完成了启动画面,效果很好.https://www.bignerdranch.com/blog/splash-screens-the-right-way/ 基本上我通过主题设置了一个splascreen:
<style name="ThemeSplash" parent="Theme.AppCompat.NoActionBar">
<item name="android:windowBackground">@drawable/drawable_splashcreen</item>
</style>
Run Code Online (Sandbox Code Playgroud)
我想把一个矢量图像放在里面:
(drawable_splashcreen)
<item android:drawable="@color/color_background_splash_screen" />
<item
android:drawable="@drawable/vector_najdiflet_logo"
/>
Run Code Online (Sandbox Code Playgroud)
图像将在整个屏幕上拉伸.在API 23上,它的工作方式应该如此.但在较旧的设备上它只是拉伸.我尝试了宽度,高度,甚至搞砸了视口但没有成功.对此有任何修复?
我需要为我的应用设置背景图片,唯一的问题是我不知道XXHDPI设备的图像大小.
我在这里阅读了MDPI,HDPI和XHDPI设备,但XXHDPI没有任何内容: Android闪屏图像大小适合所有设备
那么,drawable-xxhdpi文件夹的背景大小是多少?
我已经为我的应用程序设置了一个加载屏幕(启动),通过一些建议解释了"正确的方法":
styles.xml:
<style name="SplashTheme" parent="Theme.AppCompat.NoActionBar">
<item name="android:windowBackground">@drawable/splash_vector_drawable</item>
</style>
Run Code Online (Sandbox Code Playgroud)
表现:
<activity
android:name="com.tba.versionc.SplashActivity"
android:theme="@style/SplashTheme">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
Run Code Online (Sandbox Code Playgroud)
Java的:
public class SplashActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Intent intent = new Intent(this, MainActivity.class);
startActivity(intent);
finish();
}
}
Run Code Online (Sandbox Code Playgroud)
当我为启动画面设计矢量drawable时,我设置它的宽高比以匹配我的手机(16:9),它似乎工作正常,但我担心在设备上运行时会出现的宽高比会发生什么屏幕比例不同.
为了消除它"伸展以适应"错误尺寸屏幕的可能性,我宁愿它是中心裁剪,但由于它不是ImageView,甚至是布局文件的一部分,我不知道有什么办法设置中心裁剪属性.
任何人?
我知道这个问题已经在这里被问到并回答了,但是时间过去了,我们有了新设备的"疯狂"分辨率和宽高比......
基于该问题,图像大小应为:
肖像模式
MDPI为320x480 dp = 320x480px(1x)
LDPI为0.75 x MDPI = 240x360px
HDPI为1.5 x MDPI = 480x720px
XHDPI是2 x MDPI = 640x960px
XXHDPI是3 x MDPI = 960x1440px
XXXHDPI是4 x MDPI = 1280x1920px
景观模式
MDPI为480x320 dp = 480x320px(1x)
LDPI为0.75 x MDPI = 360x240px
HDPI为1.5 x MDPI = 720x480px
XHDPI是2 x MDPI = 960x640px
XXHDPI是3 x MDPI = 1440x960px
XXXHDPI是4 x MDPI = 1920x1280px
1)现在我们有像Galaxy S7,Pixel XL(1440x2650)或Galaxy S8(1440x2960)这样的设备应该是理想的飞溅图像尺寸吗?
2)我应该如何为上述设备包含这些资源?我需要维护支持设备的app到api 15 ...
谢谢
我使用主题而不是布局来显示启动画面,但我很困惑为不同的屏幕密度设置的分辨率图像,因为<item>标签的宽度和高度属性可用API> 22.
背景drawable
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@color/colorAccent" />
<item >
<bitmap
android:gravity="center"
android:src="@drawable/splash_logo" />
</item>
</layer-list>
Run Code Online (Sandbox Code Playgroud)
样式
<style name="SplashTheme" parent="Theme.AppCompat.NoActionBar">
<item name="android:windowBackground">@drawable/splash_background</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorPrimary">@color/colorPrimary</item>
</style>
Run Code Online (Sandbox Code Playgroud)