如何在SplashActivity中使用中心裁剪



在我的SlashActivity中,我只使用AndroidManifeststyle,这里建议https://www.bignerdranch.com/blog/splash-screens-the-right-way/.

SplashActivity我想使用splash.jpg,但这张照片改变屏幕大小。

我如何在我的style文件中使用centerCrop或有其他解决方案?

My drawble:

<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>

你可能想在你的splash图片中添加padding。

添加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>

我在创建启动画面时也遵循了这个博客。一般来说,开机画面有一个背景颜色和你的应用程序的标志,你可以把它设置为背景。所以,你不应该要求在启动画面中对图像进行中心裁剪。如果需要的话,我强烈建议使用任何编辑器来编辑图像,而不是通过编程进行编辑。

相关内容

  • 没有找到相关文章

最新更新