【发布时间】:2013-12-25 07:57:03
【问题描述】:
我有一个带边框的布局。我的问题是,边框和其他布局之间有一个空格,但我不知道它来自哪里。
我的布局看起来像
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
style="@style/BackgroundLayout"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<!-- Layout come's here :) -->
</LinearLayout>
BackgroundLayout 的样式如下:
<style name="BackgroundLayout">
<item name="android:background">@drawable/frame_border</item>
<item name="android:orientation">vertical</item>
<item name="android:paddingLeft">@dimen/line_width</item>
<item name="android:paddingRight">@dimen/line_width</item>
</style>
frame_border(是一个drawable.xml)看起来像:
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
<item>
<shape android:shape="rectangle" >
<stroke
android:width="@dimen/line_width"
android:color="@color/background_color" />
<solid android:color="@color/background_color" />
</shape>
</item>
<item
android:left="@dimen/line_width"
android:right="@dimen/line_width"
android:bottom="@dimen/line_width">
<bitmap android:src="@drawable/background" android:gravity="fill_horizontal|fill_vertical" />
</item>
</layer-list>
@dimen/line_width 的大小为 5dp。
我的样式中的填充与边框的大小相同。所以应该有任何差异(希望如此)。
编辑: 为了演示这个问题,我创建了一个新视图(见下文)。背景保持不变。视图(LinearLayout为黑色区域):
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/frame_container"
style="@style/BackgroundLayout"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@android:color/black"
android:orientation="vertical"
android:weightSum="1" >
</LinearLayout>
</FrameLayout>
解决方案
到目前为止,我的解决方案是将背景图像位置从@dimen/line_width (5dp) 更改为 5.5dp。不令人满意,但它有效。
<item
android:left="5.5dp"
android:right="5.5dp"
android:bottom="5.5dp">
<bitmap android:src="@drawable/background" android:gravity="fill_vertical|fill_horizontal"/>
</item>
【问题讨论】:
标签: android android-layout android-drawable