如何在线性布局的顶部绘制边框

时间:2009-12-17 17:53:26

标签: android

我已经按照示例进行了渐变分割: http://www.connorgarvey.com/blog/?p=34

我试图在线性布局的BOTTOM处绘制一条水平线。

这是我的线性布局文件:

        <LinearLayout android:id="@+id/test" android:layout_width="fill_parent"
            android:layout_height="wrap_content>

<ImageView android:id="@+id/icon1"
    android:layout_width="32dip"
    android:layout_height="32dip"
/>

我确实添加了

<View
android:background="@drawable/black_white_gradient"
android:layout_width="fill_parent"
android:layout_height="1dp"
android:layout_above="@id/test"
/>

但我没有在LinearLayout顶部看到任何行。当我转到Hierarchy View并查看他的View(对于hort分隔符)时,getWidth()为0而getHeight()为1。

你能告诉我我错过了什么吗?

谢谢。

4 个答案:

答案 0 :(得分:4)

使用您发布的代码,它非常精细。但是大小为1dp的事实可能无法显示。增加大小或者你只想要一行来使用这个默认的line drawable来自android

android:background="@android:drawable/divider_horizontal_bright" 
// this for white background only

我希望这能帮助你得到你想要的东西

答案 1 :(得分:2)

我认为在parent linearlayout视图中可能缺少方向;

<LinearLayout android:orientation="vertical"

或者如果你使用RelativeLayout而不是LinearLayout,你可以设置'layout_alignParentBottom;

<View android:layout_alignParentBottom="true"

答案 2 :(得分:1)

如果高度为1dp,则无法看到。请尝试2dp:

<View android:background="@drawable/black_white_gradient" android:layout_width="fill_parent" android:layout_height="2dp" android:layout_above="@id/test" />

答案 3 :(得分:1)

仅在尺寸至少为2dp时才显示黑色边框。尝试删除边框,并将纯色设置为黑色:

<shape xmlns:android="http://schemas.android.com/apk/res/android">
    <solid android:color="#000" />
</shape>

你可以再次使用1dp的高度。