9补丁内容区域错误

时间:2015-01-29 12:03:33

标签: android nine-patch

看来我的内容区域与9patch文件所说的应该是不匹配的 继承我的9patch文件。 my-nine-patch-image

这是一张图片,里面有一个项目,但文字过早被切断,应该是“Varenr”。我不明白为什么有这么大的空白而不是文字enter image description here

,这是微调器的xml布局:

        <Spinner
            android:id="@+id/sortSpinner"
            android:layout_width="0dp"
            android:layout_weight="4"
            android:layout_height="35dp"
            android:layout_marginBottom="10dp"
            android:layout_marginTop="10dp"
            android:background="@drawable/spinner_background"
            android:drawSelectorOnTop="true"
            android:focusable="false"
            android:focusableInTouchMode="false"
            android:prompt="@string/sort" />

锭床项目

<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@android:id/text1"
    style="?android:attr/spinnerItemStyle"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:ellipsize="none"
    android:gravity="center"
    android:singleLine="true" />

提前感谢您的帮助。

关闭,有问题的9patch: 9patch image

修改 微调器所在的整行:

    <LinearLayout
        android:id="@+id/headerLabel"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_marginLeft="15dp"
        android:layout_marginRight="15dp"
        android:background="@color/transparent"
        android:orientation="horizontal"
        android:weightSum="11">

        <LinearLayout
            android:layout_width="0dp"
            android:layout_weight="3"
            android:layout_height="wrap_content"
            android:orientation="vertical">

            <TextView
                android:id="@+id/sortAmountLabel"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginTop="10dip"
                android:singleLine="false"
                android:textColor="@color/solid_red"
                android:textSize="15dp" />

            <TextView
                android:id="@+id/sortLabel"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginBottom="5dip"
                android:text="Produkter"
                android:singleLine="true"
                android:textColor="@color/solid_red"
                android:textSize="15dp" />

        </LinearLayout>

        <Button
            android:id="@+id/filterBtn"
            android:layout_width="0dp"
            android:layout_height="35dp"
            android:layout_marginBottom="10dp"
            android:layout_marginLeft="5dp"
            android:layout_marginRight="15dp"
            android:layout_marginTop="10dp"
            android:layout_weight="4"
            android:background="@drawable/button_background_red"
            android:clickable="true"
            android:singleLine="true"
            android:onClick="setFilterList"
            android:text="Filtrér"
            android:textColor="@color/solid_white"
            android:textSize="15dp"
            android:textStyle="bold" />


        <Spinner
            android:id="@+id/sortSpinner"
            android:layout_width="0dp"
            android:layout_weight="4"
            android:layout_height="35dp"
            android:paddingRight="30dp"
            android:layout_marginBottom="10dp"
            android:layout_marginTop="10dp"
            android:background="@drawable/spinner_background"
            android:drawSelectorOnTop="true"
            android:focusable="false"
            android:focusableInTouchMode="false"
            android:prompt="@string/sort" />
    </LinearLayout>

1 个答案:

答案 0 :(得分:2)

现在,这就是我重新制作的方式:

enter image description here

这给出了这个结果:

enter image description here

确保扩展名为 .9.png

<强> [编辑]

这是应用于TextView时的结果:

enter image description here

屏幕是旧的ldpi设备(240x320 @ 120 dpi)

这是我应用它的方式:

<?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="match_parent"
    android:background="@drawable/stripes_vert_4"
    >

    <!-- ... -->

    <TextView
        android:id="@+id/txtTitle3"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:gravity="center_vertical"
        android:layout_alignParentBottom="true"
        android:textColor="@android:color/black"
        android:textSize="16sp"
        android:textStyle="bold"
        android:text="Lorem ipsum dolor sit amet"
        android:background="@drawable/spinner_drawable"
    />
</RelativeLayout>

[编辑2]

根据OP要求,我将TextView切换为Spinner:

结果:

enter image description here

使用此代码:

<?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="match_parent"
    android:background="@drawable/stripes_vert_4"
    >

    <!-- ... -->

    <Spinner
        android:id="@+id/spnElements"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:gravity="center_vertical"
        android:entries="@array/prefs_search_modes"
        android:layout_alignParentBottom="true"
        android:textColor="@android:color/black"
        android:textSize="16sp"
        android:textStyle="bold"
        android:background="@drawable/spinner_drawable"
    />
</RelativeLayout>

这意味着您的arrays.xml文件夹中有value个文件 我的是:

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <!-- Settings -->
    <!-- Word search mode -->
    <string-array name="prefs_search_modes">
        <item>*b* (Contains "b")</item>
        <item>Ab* (Starts with "Ab")</item>
        <item>*bc (Ends in "bc")</item>
        <item>Abc (Exact match)</item>
    </string-array>
</resources>

<强> [EDIT3]

在最后的评论中,OP要求(75%的空格+剩下的宽度为旋转器的剩余部分):

enter image description here

您确定吗?

正在运行的屏幕是低分辨率(ldpi) 但是在它旁边,你可以在图形编辑器中看到另一个设备(HTC Desire Bravo)屏幕 hdpi

它显示相同的&#34;问题&#34;:1/4 screen width 因此,9 png背景的可伸缩部分(包含文本)被挤掉,只有不可压缩的部分(箭头)停留。

<强> [EDIT4]

使用9补丁大小后,我可以让部分文字变得可见:

enter image description here

因此,在获得可接受的结果之前,您似乎必须尝试较小的尺寸。

<强> [EDIT5]

我忘了添加新的微调器9补丁(调整大小) 这是:

enter image description here

重新缩放时,请注意外边框:它必须完全透明且标记必须全黑