如何在全屏幕中以闪屏移除图像周围的白色边框

时间:2013-04-10 15:13:57

标签: android xml

我目前正在使用带有图像视图的初始屏幕。问题是,当显示启动画面时,图像周围有一个白色边框。因此,初始屏幕显示带有白色边框的图像。我想完全删除白色边框。有没有人知道这个或任何建议的原因?

这是我的xml代码:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content" >

    <View android:layout_width="match_parent"
        android:layout_height="match_parent" />

    <ImageView android:id="@+id/ImageViewSplash"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:adjustViewBounds="true"
        android:scaleType="centerCrop"
        android:contentDescription="@string/splashImageContentDescription" />
</RelativeLayout>

2 个答案:

答案 0 :(得分:2)

我在我用于启动页面的主题/样式中应用透明背景,这样我就不必扭曲正在显示的图像以适应设备的屏幕尺寸。当使用包含透明背景的PNG文件时,这种方法效果特别好。

这是我用于这个“透明”主题的风格:

    <style name="Theme.Transparent" parent="android:Theme">
        <item name="android:windowIsTranslucent">true</item>
        <item name="android:windowBackground">@android:color/transparent</item>
        <item name="android:windowContentOverlay">@null</item>
        <item name="android:windowNoTitle">true</item>
        <item name="android:windowIsFloating">true</item>
        <item name="android:backgroundDimEnabled">false</item>
    </style>

然后,将此主题应用于应用程序清单中的splash活动,如下所示:

    <activity
        android:name="com.masseria.homework9.SplashActivity"
        android:configChanges="orientation|keyboardHidden|screenSize"
        android:label="@string/app_name"
        android:theme="@style/Theme.Transparent" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>

答案 1 :(得分:0)

在我看来,除了ImageView之外,您可以删除布局中的所有内容。所以它看起来像这样:

<ImageView xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/ImageViewSplash"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:adjustViewBounds="true"
        android:scaleType="centerCrop"
        android:contentDescription="@string/splashImageContentDescription" />

然后你可以在图像上使用scaleType,直到找到填满屏幕的那个。如果这些都不起作用,我建议增加图像文件的分辨率。