在我的SlashActivity
我只使用AndroidManifest
和style
,如此处https://www.bignerdranch.com/blog/splash-screens-the-right-way/所述。
在SplashActivity
中,我想使用splash.jpg
,但此图片会更改为屏幕尺寸。
如何在centerCrop
文件中使用style
或是否有其他解决方案?
我的抽签:
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:drawable="@color/colorMaterialWhite"/>
<item>
<bitmap
android:gravity="center"
android:src="@drawable/splash" />
</item>
</layer-list>
AndroidManifest:
<activity
android:name=".SplashActivity"
android:theme="@style/SplashTheme">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
SplashActivity:
public class SplashActivity extends AppCompatActivity {
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Intent intent = new Intent(this, NavigationActivity.class);
startActivity(intent);
finish();
}
}
风格:
<style name="SplashTheme" parent="Theme.AppCompat.NoActionBar">
<item name="android:windowBackground">@drawable/background_splash</item>
</style>
答案 0 :(得分:0)
我在创建Splash屏幕时也关注了这个博客。通常,启动画面具有背景颜色和应用程序的徽标,您可以将其设置为背景。因此,您不应要求在Splash屏幕中对图像进行centerCrop。如果有需要,我强烈建议使用任何编辑器编辑图像,而不是以编程方式进行编辑。
答案 1 :(得分:0)
您可能希望在启动图像中添加填充。
在商品标记内添加android:top
,android:bottom
,android:right
,android:left
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:drawable="@color/colorMaterialWhite"/>
<item
android:top="200dp"
android:bottom="200dp"
android:left="200dp"
android:right="200dp">
<bitmap
android:gravity="center"
android:src="@drawable/splash" />
</item>
</layer-list>