启动画面调整不正确

时间:2013-05-11 19:24:23

标签: android splash-screen xamarin

我使用下面的样式在我的Xamarin Android应用程序中显示启动画面但是图像总是显示不正确的大小调整。我希望它能够以正确的尺寸调整大小,但它总是会扩展以适应屏幕。

<?xml version="1.0" encoding="utf-8" ?>
<resources>
  <style name="Theme.Splash" parent="android:Theme">
    <item name="android:windowBackground">@drawable/splashscreenimage</item>
    <item name="android:windowNoTitle">true</item>
    <item name="android:adjustViewBounds">true</item>
    <item name="android:scaleType">centerCrop</item>
  </style>
</resources>

启动画面活动

  [Activity(MainLauncher = true, Theme = "@style/Theme.Splash", NoHistory = true)]
  public class SplashScreenActivity : Activity
  {
    protected override void OnCreate(Bundle bundle)
    {
      base.OnCreate(bundle);

      // Start our real activity
      StartActivity(typeof(LoginActivity));
    }
  }

5 个答案:

答案 0 :(得分:4)

一个问题是windowBackground的大小设置为全屏大小,包括设备顶部或底部的状态栏。但状态栏仍然显示。我对Android Activity Background Image的回复使用了windowContentOverlay,它排除了状态栏。

答案 1 :(得分:2)

对于背景可绘制,您应该使用图层列表。例如,使bitmap_splash.xml:

<item android:drawable="@color/background"/>

<item>
    <bitmap
        android:gravity="center"
        android:src="@drawable/splashscreenimage" />
</item>

,然后按照您的样式使用它:

...
<style name="Theme.Splash" parent="android:Theme">
    <item name="android:windowBackground">@drawable/bitmap_splash</item>
...

答案 2 :(得分:-1)

只需将其添加到SplashScreenActivity的OnCreate方法中即可:

View decorView = getWindow().getDecorView();
// Hide the status bar. 
int uiOptions = View.SYSTEM_UI_FLAG_FULLSCREEN;
decorView.setSystemUiVisibility(uiOptions);
// Remember that you should never show the action bar if the
// status bar is hidden, so hide that too if necessary.
ActionBar actionBar = getActionBar(); actionBar.hide();

对于Android 4.1及更高版本 ,更多:https://developer.android.com/training/system-ui/status#java

答案 3 :(得分:-2)

看看:

Android: Scale a Drawable or background image?

基本上,这允许您指定在图像小于屏幕视图边界时如何剪裁或拉伸图像。我认为这个答案的作者给出了一个很好的解释,它可能就是你要找的东西。

答案 4 :(得分:-3)

如果我在自己的应用中无法正确显示图片,我找到了这个有用的网站:Android scale types

它显示了您可以使用的不同类型的比例的结果。希望这有帮助!