我正在制作一个布局,我将以位图为中心,我想要左边和右边。右边距位图缩放(水平)以填充屏幕,这样我的中心项目可以是装饰的标题栏,左边和右边的位置。右边是与中心位图背景匹配的填充位图,因此水平拉伸。
但我所看到的是位图之间有一个空格。左边&正确的比例,但它们之间有一个空间。
例如,我得到的是:
http://www.58seconds.com/getting.png
我想要的是:
http://www.58seconds.com/want.png
有什么想法吗?
以下是我使用的布局代码的片段:
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
>
<ImageView
android:layout_width="1dp"
android:layout_weight="1"
android:layout_height="45sp"
android:src="@drawable/mdjleftfiller"
android:layout_gravity="top"
android:gravity="top"
android:scaleType="fitXY"
/>
<ImageView
android:id="@+id/command_selection_topImage"
android:layout_width="wrap_content"
android:layout_height="45sp"
android:src="@drawable/top_image"
android:layout_gravity="top"
android:gravity="top"
android:layout_weight="0"
/>
<ImageView
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="45sp"
android:src="@drawable/mdjrightfiller"
android:layout_gravity="top"
android:gravity="top"
android:scaleType="fitXY"
/>
</LinearLayout>
答案 0 :(得分:1)
您是否考虑使用单个标题栏图像创建9补丁?如果你在实际标题的两侧都有“拉伸”部分,它将伸展到适合你想要的任何东西,而不需要采用布局技巧。
答案 1 :(得分:0)
尝试创建两个图像,一个作为背景,scaleType设置为FIT_CENTER,然后将另一个设置为顶部,然后移动到中心。
答案 2 :(得分:0)
这是一个很好的干净方式,这正是卢卡斯所说的,但是在xml:
<FrameLayout android:id="@+id/navbar" android:layout_width="fill_parent" android:layout_height="wrap_content" android:background="@drawable/titlebar_repeat">
<ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/titlebar_logo" android:layout_gravity="center" />
</FrameLayout>
在这种情况下,titlebar_repeat只是一个像素宽,titlebar_logo只是具有透明背景的文本。在您的情况下,因为您似乎不想要高度风格化的文本,所以如果您愿意,可能只需将ImageView设置为TextView。